在推送到远程之前重新定位本地Git分支

scr*_*die 6 git git-push git-rebase

遥控器:原产地

$ git branch
* master

$ git checkout -b "new_feature"
Run Code Online (Sandbox Code Playgroud)

现在我在"new_feature"分支上做了几次提交,并希望在更新后将其推送到原点.

$ git branch
master
* new _feature

$ git pull --rebase origin new_feature    
$ git push origin new_feature
Run Code Online (Sandbox Code Playgroud)

这是在推送到远程之前更新本地分支的正确方法吗?

小智 4

你想使用

\n\n
git pull --rebase origin master\n
Run Code Online (Sandbox Code Playgroud)\n\n

参数必须是可选的遥控器,以及git pull该遥控器上的可选 refspec 或引用/分支:

\n\n
git pull [options] [<repository> [<refspec>\xe2\x80\xa6]]\n
Run Code Online (Sandbox Code Playgroud)\n\n

new_feature不会工作,因为它是本地分支,此外,它对于 没有意义rebase,因为您想要将修订传递到 之上的rebase分支。如果您已经签出,那么就可以理解/暗示这就是您想要的分支,这就是通常的工作方式。new_feature new_featurerebaserebase

\n