2

我有一个 Git 存储库,它由 Gerrit 管理,你不推送到<branch>,而是推送到refs/for/<branch>,然后魔法发生了。因此,我希望git pulland有不同的行为git push。特别是,我想git pull从 拉<branch>,但git push要推到refs/for/<branch>。是否可以在 Git 中进行设置?

(注意:之前有人问过这个问题,但答案很简单,“不,但这是让 Git 强制你始终指定 refspec 的方法,这样你就永远不会意外推送到错误的分支”,这不是我正在寻找的答案)

4

1 回答 1

2

我使用以下配置:

 git remote add review ssh://user@review.example.com:29418/repo
 git config remote.pushDefault review
 git config remote.review.fetch master:master
 git config remote.review.push master:refs/for/master

即添加远程命名review,为所有分支设置默认推送远程,为远程分支review配置获取/拉取,为远程master分支master配置推送。masterrefs/for/master

于 2018-10-03T01:37:26.693 回答