我想做的是将每个分支移动到它在BitBucket上的自己的回购,理想情况下保持每个分支的历史记录。每个项目都在一个单独的子文件夹中,并且每个项目都在不同的分支内完成。我希望这种分离会有所帮助。谁能知道如何清理我所造成的这些混乱?
答案 0 :(得分:1)
您可以通过
将新存储库添加到当前存储库git remote add <remote name> <repository url>
列出遥控器
git remote -v
将分支推送到新存储库
git push <remotename> <brancchname>
如果要将子文件夹推送到新存储库,请参阅以下网站
<强> Splitting a subfolder out into a new repository 强>
将Git存储库中的文件夹转换为全新的存储库。
将文件夹拆分为单独的存储库时,您不会丢失任何Git历史记录或更改。
打开终端(适用于Mac和Linux用户)或命令行(适用于Windows用户)。 将当前工作目录更改为本地项目。 运行git filter-branch,确保包含要分隔的文件夹的名称。
git filter-branch --prune-empty --subdirectory-filter \
YOUR_FOLDER_NAME master
# Filter the master branch to your directory and remove empty commits
# Rewrite 48dc599c80e20527ed902928085e7861e6b3cbe6 (89/89)
# Ref 'refs/heads/master' was rewritten
存储库现在包含子文件夹中的所有文件。请注意,虽然以前的所有文件都已删除,但它们仍然存在于Git历史记录中。您可以选择将存储库推送到新的远程控制器,或者以通常的任何其他方式对其进行操作。
git push my-new-repo -f .