就像SO上这个问题描述的场景: http://stackoverflow.com/questions/928646/how-do-i-tell-git-to-always-select-my-local-version-for-conflicted-merges-on-a-sp
有两个分支,每个分支使用不同的配置,例如:
bash
config.txt (on release branch):
database = 10.9.8.7
bash
config.txt (on develop branch):
database = 192.168.0.1
当需要把develop分支的功能合并到release分支时,不希望config文件被合并;
有以下几种解决方案:
- 使用merge strategy;创建一个merge driver,对指定的文件使用指定的merge strategy;
缺点:- 文件无改动时,merge driver不会启动,还是会被合并;
- rebase不管用;
- 提交时,使用assume-unchanged;
缺点:- 1. 提交时需要时刻关注文件改动;
- 使用subtree(submodule)
不知道大家有没什么建议?
http://blog.miniasp.com/post/2014/12/23/Git-Advanced-Assume-Unchanged-Skip-worktree.aspx
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.