如何配置Git实现本地分支自动推送到远程指定分支
配置Git自动推送master分支到远程的something_else分支
我来帮你解决这个问题~其实有两种实用的方式,能让你在执行git push时自动完成git push origin master:something_else的操作,具体如下:
方法一:给master分支单独设置推送目标
这种方式只针对本地的master分支生效,是最精准的配置:
- 在终端里执行这条命令,直接指定master分支的推送目标:
git config branch.master.push "origin master:something_else" - 配置好之后,只要你在master分支下执行
git push,Git就会自动把本地master的内容推送到远程的something_else分支啦。
要是想确认配置是否生效,可以执行这条命令查看当前设置:
git config --get branch.master.push
方法二:用推送规则做全局/仓库级配置
如果你希望这个规则能覆盖更多场景,或者对多个分支生效,可以用push.refspec来配置:
- 只针对当前仓库生效的话,执行:
git config push.refspec "master:something_else" - 要是想让所有本地仓库都应用这个规则,就加上
--global参数:git config --global push.refspec "master:something_else"
不过要注意,全局配置可能会影响其他仓库的分支推送行为,所以如果只是针对当前项目的需求,更推荐用仓库级的配置哦。
补充说明
你之前尝试的--set-upstream-to(也就是-u参数),确实只负责关联本地分支和远程分支的拉取(pull)逻辑,和推送的目标分支配置是分开的,所以之前没达到预期是正常的。
如果之后想要取消这个配置,只需要执行对应的unset命令就行,比如取消master分支的推送配置:
git config --unset branch.master.push
内容的提问来源于stack exchange,提问作者laggingreflex
相关产品推荐
相关产品推荐

