git - git远程跟踪分支推送新分支

  显示原文与译文双语对照的内容

我无法理解推到远程分支时所做的错误。 这是我所做的:

我使用 SourceTree GUI工具在本地创建了一个名为CP_Server_Release的远程跟踪分支。 这里分支被设置为跟踪远程分支源/icn_portal_server_release 。 我需要一个稍微短一点的名字,以便我的本地分支方便。

我在CP_Server_Release上做了更改并提交了。

然后,我推动了我的更改,但最终在远程 repo 中创建了一个名为CP_Server_Release的新分支 ! 这不是我期望的,而是将我的更改推到ICN_Portal_Server_Release中。 所以我觉得追踪装置出了点问题。

然后删除无意中创建的新远程分支,并确保通过运行以下命令跟踪我想要跟踪的分支:


moliveira-> git branch -u origin/ICN_Portal_Server_Release
Branch CP_Server_Release set up to track remote branch ICN_Portal_Server_Release from origin.
[~/src_git/icnportal_server/src/main/java]
moliveira-> git status
# On branch CP_Server_Release
# Your branch is ahead of 'origin/ICN_Portal_Server_Release' by 1 commit.
# (use"git push" to publish your local commits)
#
nothing to commit, working directory clean

我觉得正确。 我提前提交,因为上次我推出了一个新的分支而不是将更改推入原来的/icn_portal_server_release 。 看起来我在追踪正确的远程分支。

现在我想继续,把我的变更推到 origin/icn_portal_server_release 。


[~/src_git/icnportal_server/src/main/java]
moliveira-> git push 
Counting objects: 109, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (24/24), done.
Writing objects: 100% (30/30), 5.05 KiB | 0 bytes/s, done.
Total 30 (delta 10), reused 0 (delta 0)
To http://pdevicnos101.corp.intuit.net:81/git/cns/icnportal_server.git
 * [new branch] CP_Server_Release -> CP_Server_Release

它又创造了一个新 ! 我不明白为什么我做错了什么? 我唯一能想到的是,它可以能与我不在 repo (/icnportal_server )的root 目录中,而是在子目录 (src/main/java). 中。

感谢你的帮助 !

时间: 作者:

尝试下一个配置( 适用于我的1.8.3.2 git版本)


$ git config --global push.default upstream
$ git push

作者:

使用 git branch 时,你正在创建一个新分支,但不在它的上定位。 那之后你就得做 git checkout yourNewBranch

而不是这个,你可以使用 git checkout -b yourNewBranch 创建新分支并在它的上定位。

作者:
...