如何将两个分支的项目合并为一个

时间:2017-06-06 21:56:24

标签: git visual-studio

方案

假设我有一个包含名为ProjectA的单个项目的Visual Studio解决方案。这个解决方案存在于git中的branchA。然后,有一段时间我将branchA分支到branchB以为同一产品创建不同的UI。 branchAbranchB的发展都是独立的。它们在两个分支中仍保留相同的ProjectA名称;整体结构保持不变。

---branchA---x---x------x---------x
              \
               \---branchB---x---x
当前结构(两个分支)
- ProjectA
  ...
- Solution.sln
未来的结构
- ProjectA
  ...
- ProjectB
  ...
- Solution.sln

问题

如何在不覆盖branchB代码的情况下将branchA合并到branchA?从本质上讲,我希望在branchB中包含branchA的内容而不共享任何代码。 理想情况下,我希望保留branchB的历史,直到共同的祖先。

选项

  • branchB的{​​{1}}重命名为ProjectA并修复文件夹结构并丢失ProjectB的历史记录。
  • 重写历史记录,就像在任何修改和添加发生之前,文件是在共同祖先的位置复制一样。

我尝试了什么

我尝试了各种合并策略(branchB),但所有合并策略都移动了大部分内容。

1 个答案:

答案 0 :(得分:0)

或许stash ProjectA的内容,合并B,并应用隐藏的更改。