我希望本地有两个分支(例如a-local
和b-local
)和两个远程分支(例如a-remote
,b-remote
),它们成对匹配(例如a-local
- a-remote
等)。如何确保我不会意外地将本地分支推送到错误的远程分支(例如a-local
- > b-remote
)?
我正在使用git 1.8.2.3。
答案 0 :(得分:1)
在实际推送之前,请在命令中添加-n
。这显示了哪些本地分支将被推送到哪个远程和远程分支而不实际进行推送。然后你可以使用-n
修改命令,最后在开心时删除-n
。
我所做的一件事是将{。1}}的push.default全局选项配置到上游。默认值是匹配,它将尝试推送每个匹配的分支。
如果你的遥控器被称为git config --global push.default upstream
(可能是),那么在本地推送更改的命令将是origin
。但是简单的git push origin a-local:a-remote -n
可能基于push.default和上游配置(参见kirelagin的注释)。
答案 1 :(得分:0)
哇,意外很难做到这一点。
一旦你git push --set-upstream origin a-local:a-remote
进行跟踪(对另一对进行跟踪),你可以只用git checkout a-local; git push
或git-push a-local
进行推送,我应该说你必须努力意外地推到错误的分支......