如何在远程服务器上更新 .git/config



我想将非快进合并设置为已在使用的存储库的默认值。这意味着添加

  [merge]
          ff = false

到存储库的 .git/config 文件。因为这是元数据,所以我不能指望它在我像往常一样推送存储库时更新。

所以我一直在克隆裸存储库,进行更改,并尝试将结果推送回服务器。除了我无法对"git push"进行任何论点组合,实际上可以做我想做的事。

更新:看起来我想描述的是不可能的(感谢 #git 上的耐心人士);我只需要鼓励我的开发人员这样做。

ssh 介绍远程服务器并在裸 git 中做任何你喜欢的事情(并小心!

但是,是的,你应该使用钩子

也许您可以使用共享/跟踪文件的"包含":

git clone ...
git config include.path '../.gitconfig'
$ cat .gitconfig 
[merge]
    ff = false
[local]
    policy = true
$ git config -l | tail -3
include.path=../.gitconfig
merge.ff=false
local.policy=true

也许有一些钩子来强制执行策略(检查本地策略在签出后和预提交)。

我只是编造的,所以把它当作一个想法,而不是建议。这可能会在我不熟悉的情况下中断...

祝你好运

最新更新