# git-up **Repository Path**: nocnob/git-up ## Basic Information - **Project Name**: git-up - **Description**: Gitee 仓库批量推送工具 - **Primary Language**: Unknown - **License**: MulanPSL-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2025-07-25 - **Last Updated**: 2025-09-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: Git, Gitee ## README = Git Up 功能: * 将本地的 Git 仓库批量推送到 Gitee; * 批量拉取远程 Git 仓库到本地,再批量推送到 Gitee。 依赖于 git(必需)和 git-lfs(可选)。 == 安装 === 方法一:二进制安装 从 link:https://gitee.com/nocnob/git-up/releases[发行版页面] 下载最新安装包,解压后修改配置即可。 === 方法二:通过 `go install` 安装 [source,bash] ---- go install gitee.com/nocnob/git-up/cmd/git-up@latest $(go env GOPATH)/bin/git-up version ---- * 默认安装在 GOPATH 目下。 == 配置 配置示例: * link:./example/config.toml[config.toml] * link:./example/urls.csv[url.csv] 配置优先级:命令参数 -> 配置文件 == 用法 Git 仓库批量推送到 Gitee 的两种用法。 查看帮助: [source,bash] ---- git-up help ---- === 示例一:批量推送本地仓库 批量推送本地仓库到 Gitee,命令如下: [source,bash] ---- git-up --config=config.toml --root-dir=src ---- * `--config` 配置文件路径,包含了 Gitee AccessToken 等信息; * `--root-dir` Git 仓库根目录地址,目录结构需要和 Gitee 仓库链接一一对应,如: + [source,text] ---- src ├── user1 │ └── repo1 -> 推送到 gitee.com/user1/repo1 └── org1 ├── repo1 -> 推送到 gitee.com/org1/repo1 └── repo2 -> 推送到 gitee.com/org1/repo2 ---- * Gitee 不存该仓库时自动新建; * 推送所有分支和标签以及 LFS 数据; * 不会强制推送。 === 示例二:批量推送远程仓库 从远程拉取 Git 仓库到本地,再批量推送到 Gitee,命令如下: [source,bash] ---- git-up --config=config.toml --root-dir=src --urls-csv=urls.csv ---- * `--config` 配置文件路径,包含了 Gitee AccessToken 等信息; * `--root-dir` Git 仓库根目录地址,用于保存 Git 仓库; * `--urls-csv` 包含源仓库 URL 列表的文件,格式 `GIT_CLONE_URL,OWER/REPO`,如: + [source,csv] ---- https://github.com/user1/public_repo.git,user1/public_repo https://USER:TOKEN@github.com/org1/private_repo1.git,org1/private_repo1 git@github.com:org1/private_repo2.git,org1/private_repo2 ---- 程序会先将 `--urls-csv` 中 Git 仓库的拉取到本地 `--root-dir`,再推送到 Gitee,如: [source,text] ---- src ├── user1 │ └── public_repo -> 来自 github.com/user1/public_repo 推送到 gitee.com/user1/public_repo └── org1 ├── private_repo1 -> 来自 github.com/org1/private_repo1 推送到 gitee.com/org1/private_repo1 └── private_repo2 -> 来自 github.com/org1/private_repo2 推送到 gitee.com/org1/private_repo2 ----