如何强制推送到Git中的另一个分支

时间:2016-04-29 01:09:25

标签: git

通过以下方式执行强制推送:

git push origin +branch

通过以下方式对不同名称的远程分支进行推送:

git push origin local:remote

如何强行推送到不同名称的远程分支?

我试过了:

git push origin local:+remote

但它会创建一个名为+remote

的新分支

2 个答案:

答案 0 :(得分:7)

尝试git push origin local:remote --force

答案 1 :(得分:5)

只是比接受的答案更完整:refspec的语法是[+][src][:dst],最多只有src:dst中的一个被省略(所以空字符串和+本身都是无效的。)

因此,您的案例的非--force语法为+local:remote,而不是local:+remote

使用--force会在每个refspec前面添加+,即这两个是等效的:

git push --force origin someBranch local:remote anotherBranch
git push origin +someBranch +local:remote +anotherBranch