我正在开发一个本地git存储库.有两个分支,master和feature_x.
我想推feature_x送到远程仓库,但我不想在master分支上推送更改.
会git push origin feature_x从我的feature_x分支(feature_x分支已经存在远程的)工作?
我不想在我的盒子上测试这个,因为我现在无法推动掌握.
cpj*_*eur 359
是的,只需执行以下操作即可
git checkout feature_x
git push origin feature_x
Run Code Online (Sandbox Code Playgroud)
Kar*_*ose 70
默认情况下,git push更新所有远程分支.但是你可以配置git只更新当前分支到它的上游.
git config push.default upstream
Run Code Online (Sandbox Code Playgroud)
这意味着当您执行git push时,git将仅更新当前(已检出)分支.
其他有效选项包括:
nothing:除非明确给出refspec,否则不要推送任何内容(错误输出).这主要是针对那些希望通过始终明确避免错误的人.matching:推送两端具有相同名称的所有分支.(Ver 1.7.11之前的默认选项)upstream:将当前分支推送到其上游分支.如果您要推送到通常从中拉出的相同存储库(即中央工作流),则此模式才有意义.无需为本地和远程分支使用相同的名称.tracking:不推荐使用,upstream改为使用.current:将当前分支推送到接收端同名的远程分支.适用于中央和非中央工作流程.simple:[自Ver 1.7.11起可用]在集中式工作流程中,upstream如果上游分支的名称与本地分支的名称不同,则可以更加安全地拒绝推送.当你推到一个与通常拉出的遥控器不同的遥控器时,请按照current.这是最安全的选择,适合初学者.此模式已成为Git 2.0中的默认模式.Karthik Bose回答之上的小更新- 您可以全局配置git,以影响所有工作区以这种方式行事:
git config --global push.default upstream
Run Code Online (Sandbox Code Playgroud)