3

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

  [merge]
          ff = false

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

所以我一直在克隆裸仓库,进行更改,并尝试将结果推送回服务器。除了我无法对“git push”进行任何参数组合之外,实际上可以做我想做的事。

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

4

2 回答 2

1

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

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

于 2012-05-03T18:47:23.063 回答
0

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

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

也许有一些钩子来执行策略(在结帐后和提交前检查 local.policy)。

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

祝你好运

于 2012-05-04T00:04:19.487 回答