将 Gitee 仓库中的文件夹转移为新仓库

发布于:2025-06-27 ⋅ 阅读:(13) ⋅ 点赞:(0)

要将 Gitee 仓库中的文件夹转换为新的独立仓库,可按以下步骤操作:

一:创建新的目标仓库

  1. 登录 Gitee,点击右上角「+」→「新建仓库」。
  2. 设置仓库名称、描述等信息,不要初始化 README、.gitignore 等文件(保持空仓库)。
  3. 创建后记录新仓库的 URL(如 https://gitee.com/your-username/new-repo.git)。

二:克隆原仓库并分离文件夹
在本地终端执行以下命令:

# 安装并使用 git filter-repo(如果未安装,需先安装)
# macOS: brew install git-filter-repo
# Ubuntu: apt-get install git-filter-repo
# 或使用Python版: pip install git-filter-repo

# 克隆原仓库(替换为你的原仓库 URL)
git clone https://gitee.com/your-username/original-repo.git
cd original-repo

# 创建新分支(用于分离文件夹)
git checkout -b split-folder

# 使用 filter-repo 分离指定文件夹(替换 folder-name 为实际文件夹名)
# 注意:需先安装 filter-repo(brew install git-filter-repo 或 pip install git-filter-repo)
git filter-repo --subdirectory-filter folder-name --force

# 查看分离后的文件结构(应只包含目标文件夹内容)
git log  # 查看历史提交(仅保留与文件夹相关的记录)

三:推送至新仓库

# 添加新仓库为远程地址
git remote add new-origin https://gitee.com/your-username/new-repo.git

# 推送当前分支到新仓库的 main 分支
git push new-origin split-folder:main

四:验证新仓库

  1. 刷新 Gitee 上的新仓库页面,应看到文件夹内容已完整迁移。
  2. 检查提交历史,确认仅包含与该文件夹相关的记录。

注意事项

  • 保留原仓库:此操作不会删除原仓库,原文件夹仍保留在原仓库中。
  • 依赖问题:若文件夹中的代码依赖原仓库的其他文件,需手动处理依赖关系。
  • 分支同步:若原文件夹在多个分支中有修改,需重复步骤 2-3 同步其他分支。

清理本地环境(可选)

# 删除本地克隆的临时仓库
cd ..
rm -rf original-repo

通过以上步骤,你可以将 Gitee 仓库中的特定文件夹独立为新的仓库,同时保留完整的提交历史。


网站公告

今日签到

点亮在社区的每一天
去签到