我的项目中有很多文件有时会被修改,但总是在许多不同的分支之间共享。示例包括构建脚本、包含路径的批处理文件等。甚至 .gitignore 文件本身也是一个示例。
我希望这些东西在源代码管理中,但我不希望各个分支跟踪它们的更改。
你如何处理这种情况?
您是否在 Git 中跟踪与您的项目相关的所有内容?您对共享对象的处理方法是什么?
.gitignore 是我唯一的选择吗?
您是否考虑过而不是依赖子模块git 子树 https://github.com/apenwarr/git-subtree/blob/master/git-subtree.txt?
如中所述文档 https://github.com/apenwarr/git-subtree/blob/master/git-subtree.txt:
子树不要与
子模块,用于
同样的任务。
与子模块不同,子树
不需要任何特殊结构
(如 .gitmodule 文件或 gitlinks)是
存在于您的存储库中,并且不
强制存储库的最终用户
做一些特别的事情或者理解
子树如何工作。
子树只是一个
可以提交的子目录,
分支,并与你的合并
以您想要的任何方式进行项目。
以下是一些提供一些反馈并解释子树相对于子模块的优点的帖子:
- http://ayende.com/Blog/archive/2011/01/10/the-problem-with-git-submodules.aspx http://ayende.com/Blog/archive/2011/01/10/the-problem-with-git-submodules.aspx
- http://ayende.com/Blog/archive/2011/01/10/git-subtree.aspx http://ayende.com/Blog/archive/2011/01/10/git-subtree.aspx
- http://hobocentral.net/blog/2010/07/28/git-subtree/ http://hobocentral.net/blog/2010/07/28/git-subtree/
- http://h2ik.co/2011/03/having-fun-with-git-subtree/ http://h2ik.co/2011/03/having-fun-with-git-subtree/
来自 git 邮件列表的一个非常有趣(并且有些激烈)的线程,讨论 git-subtree 和子模块的优缺点
- http://amailbox.org/mailarchive/git/2010/7/21/34793 http://amailbox.org/mailarchive/git/2010/7/21/34793
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)