我可以使用正确的方式来执行此操作。我有一个TFVC样式的存储库,其中有几个分支。我想把整个东西都转移到git上。我使用git tfs(https://github.com/git-tfs/git-tfs)将TFVC内容导出到本地git仓库,但历史记录太复杂,因此我无法一次导出所有分支。这本身并不是一个问题,因为我们也希望在此过程中迁移到不同的分支策略。将单独的git回购合并为一个
插件允许我将每个分支的历史记录导出到本地git仓库。所以我最终获得了本地的“master”回放,并且每个版本都存储在TFVC中。
现在我想提交到一个新的git回购。主人应该进入一个新的主分支,并为每个版本创建一个分支“releases/release-xyz”。我怎样才能将每个本地仓库的所有代码+历史记录提交到新仓库的正确分支?我发现了零碎的东西加入了一个遥控器,并推动了每个分支,但我想确保我在这里没有忘记任何东西。我不关心分支之间的合并历史,只要每个分支本身的导出历史都是完整的。
因此,出口结构:
folder A (master)
folder B (release-abc)
folder C (release-xyz)
和目标结构:
repo/master
repo/releases/release-abc
repo/releases/release-xyz
基本上,创建一个新的回购协议,将该回购协议作为远程存储库添加到您的每个存储库。然后使用例如推送到新的回购。 'git push newrepo master:releases/release-abc' - 这会将主分支推送到新的repo的'releases/release-abc'分支。 – poke
Jup似乎确实做了这个伎俩,我让它变得更加复杂,然后它看起来应该是这样。 – Jasper
@poke感谢分享,你可以移动你的评论来回答。这也将有助于社区中的其他人。 –