假设我有一个包含名为ProjectA
的单个项目的Visual Studio解决方案。这个解决方案存在于git中的branchA
。然后,有一段时间我将branchA
分支到branchB
以为同一产品创建不同的UI。 branchA
和branchB
的发展都是独立的。它们在两个分支中仍保留相同的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
),但所有合并策略都移动了大部分内容。