我如何git从另一个分支推出分支

时间:2014-10-12 08:07:26

标签: git

我创建了" my_branch"当我在" release"

git branch my_branch release    

现在我有了这个:

$ git branch
my_branch
master
* release

我做了一些添加和提交。然后,我想推送my_branch,但我希望它与release处于同一级别,而不是origin / HEAD。但是如果我这样做会发生什么:

git push origin my_branch

使用" my_branch"的正确命令是什么?超出" release" ?

---------------------------编辑

如果我在第一次推送后执行添加/提交:

git push origin my_branch
git checkout my_branch
git add myfile.txt
git commit -a -m"toto"
git push

fatal: The current branch my_branch has no upstream branch.
To push the current branch and set the remote as upstream, use
git push --set-upstream origin my_branch

---------------------------编辑2

git branch my_branch release
git push origin my_branch
git checkout my_branch
git add myfile.txt
git commit -a -m"toto"
git push origin my_branch

这很有效。在第一次推送gitlab之后,它显示为释放的一个分支。 在第二次推送之后,提交显示为head,在master之前。我现在明白了什么是hapening看gitlab视图。顶部的原始场景确实有效但我无法解释它。

1 个答案:

答案 0 :(得分:1)

  

拥有" my_branch"的正确命令是什么?退出"发布" ?

git push origin my_branch将有效:它将创建一个分支' my_branch'在远程仓库origin中,即使该分支将引用与release分支相同的提交。
它仍然是独立于release的分支。

它不会显示' fork'在GitLab服务器的提交历史中 如果您:

,它只会显示一个分叉
  • git checkout my_branch
  • git addgit commit
  • git push origin my_branch再次。

第一次推送可能需要您定义上游分支:

 git push --set-upstream origin my_branch
 or for more recent git
 git push -u origin my_branch