我怎样才能推出一个新分支?

时间:2013-04-26 15:48:27

标签: git branch

我创建了一个新分支。

经过一些修改后,我想将分支推送到服务器

git commit  -m 'New branch'

13 files changed, 694 insertions(+), 36 deletions(-)

git push origin malix1.0
Everything up-to-date

为什么一切都是最新的?

 git branch
* (no branch)
  malix1.0

我在哪里犯错误?

1 个答案:

答案 0 :(得分:3)

我认为在您创建新分支“malix1.0”之后,您以某种方式设法将存储库置于所谓的"detached HEAD"状态,因此您的新提交未记录在该分支上。< / p>

然后,当你运行git push origin malix1.0时,Git会获取该“malix1.0”分支的内容并尝试更新远程存储库中同名的分支。由于与远程仓库中的匹配分支相比,分支不包含任何新内容,因此没有任何反应。

要摆脱这种情况,请执行以下操作:

  1. 使分支超出当前状态:

    git branch temp
    

    否则,在签出分支机构后,您需要依靠git reflog功能来掌控您的工作。

  2. 使用您的工作更新“mailx1.0”分支:

    git checkout mailx1.0
    git merge temp
    

    也就是说,你查看了用于接收新提交的分支,然后合并到实际持有这些提交的临时分支中。

  3. 删除该临时分支:

    git branch -d temp
    

    不再需要这个分支,因为与“mailx1.0”相比,它所包含的工作现在也在“mailx1.0”分支上。

  4. 推出更新的分支:

    git push origin mailx1.0