【发布时间】:2012-12-29 13:13:13
【问题描述】:
如何在 Git 中合并源代码文件,例如 *.h 和 *.cpp?
Github 上的存储库包含整个解决方案文件,包括项目和编译器数据以及构建可执行文件。
【问题讨论】:
-
您根本不应该对已编译或已构建的文件进行版本化。
标签: git
如何在 Git 中合并源代码文件,例如 *.h 和 *.cpp?
Github 上的存储库包含整个解决方案文件,包括项目和编译器数据以及构建可执行文件。
【问题讨论】:
标签: git
您可以在.gitattributes 文件中声明合并驱动程序,以便:
.cpp 或.h(如this answer),请保留目标版本this answer 中描述了另一个选项:
git merge --no-commit branchSource
# for each non .cpp or .h files:
git checkout branchDestination -- file
但这有点麻烦。
话虽如此,合并应该涉及提交的所有内容,这就是为什么不*您不想合并的元素的版本控制是个好主意。
当这些元素可以随意生成(构建可执行文件)时,这是一个好主意(commented by KingCrunch)。
【讨论】:
git checkout 会合并吗?这听起来不对。 git checkout <branch> -- <paths> 不会在<branch> 上获取文件的版本吗?我不认为它在这里执行了任何合并操作。