GitHub Repo分支中的不同配置文件

GitHub Repo分支中的不同配置文件,git,github,travis-ci,Git,Github,Travis Ci,所以我有一个GitHub repo,它有一个主分支和一个临时分支,它们都有单独的配置文件,可以部署到不同的地方。我希望,当我对staging分支执行回master的pull请求时,我可以排除我希望在两个分支中保持不同的2个配置文件 如何以最简单的方式实现这一点?一个永久性的解决方案是很好的,但从我目前所读到的来看,它将涉及到“隐藏”和“流行”?或者可能只是在覆盖2个配置文件后执行“撤消”/“恢复” 这对我来说并不理想,因为它会导致Travis CI启动两个单独的编译/部署过程 尼克。你可以使用我

所以我有一个GitHub repo,它有一个主分支和一个临时分支,它们都有单独的配置文件,可以部署到不同的地方。我希望,当我对staging分支执行回master的pull请求时,我可以排除我希望在两个分支中保持不同的2个配置文件

如何以最简单的方式实现这一点?一个永久性的解决方案是很好的,但从我目前所读到的来看,它将涉及到“隐藏”和“流行”?或者可能只是在覆盖2个配置文件后执行“撤消”/“恢复”

这对我来说并不理想,因为它会导致Travis CI启动两个单独的编译/部署过程


尼克。

你可以使用我们的
策略来实现这一点。在两个分支中创建一个名为
.gittributes
的文件,并在其中添加以下内容:

path/to/your/config.json merge=ours
然后提交
.gittributes
文件:

git add .
git commit -m 'Added gitattributes'

所以我正确地理解了这一点,这迫使每个分支维护它自己的文件版本?最后,在我弄错之前,愚蠢的noob问题是,如果文件在我的repo根目录中,路径是否会是“config.json merge=ours”@Nick*,强制每个分支维护该文件的自己版本?*——没错!这甚至可以在您想要合并某些内容,但不想覆盖您的文件时使用,因为某些原因:
git merge some branch-s ours
。是的,如果您的文件位于根目录下,只需将
config.json merge=ours
@Nick也放进去,如果答案对您有帮助,请不要忘记标记答案(我看到您有很多问题没有标记问题)<代码>:-)
第一次尝试未按预期工作,当我接受拉请求时,暂存分支重写了我的主分支配置,稍后将重试。我一定是做错了什么。@IonicăBizău我有一个相当长的配置文件列表,我不能将它们合并成一个。我以
relative/path/config merge=ours
的格式在单独的一行中添加了每一项。提交更改后,合并将覆盖。对于多个文件,
.gittributes
是否需要特定格式?