2014-10-12 120 views
-1

我創建「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 

--------------------------- EDIT 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後顯示爲釋放分支。 第二次按下之後,提交顯示爲頭,位於主機之前。我現在明白什麼是開始看gitlab視圖。頂部的原始場景實際上可行,但我無法解釋它。

+0

什麼是用命令的問題,到底是什麼?您是否在發佈時創建了my_branch上不可見的其他提交?如果沒有,那麼命令應該完成你描述你想要完成的事情。 – user4815162342 2014-10-12 08:11:23

+0

你還在'master'上嗎? – 2014-10-12 08:13:55

+0

問題出在gitlab網絡圖中,我希望我的分支是「釋放」之外的「叉子」。但我的git理解可能是錯誤的。 – 2014-10-12 08:13:56

回答

1

將「my_branch」從「release」中刪除的正確命令是什麼?

git push origin my_branch將工作:它會創建遠程回購origin一個分支「my_branch」,即使該分公司將引用同犯的release分支。
它仍然是一個獨立於release的分支。

它不會在你的GitLab服務器的提交歷史中顯示'fork'。
它只會顯示一個叉,如果你:

  • 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 
+0

謝謝,VonC,看到我的編輯 – 2014-10-12 08:26:02

+0

@BobYoplait是的,第一次推動將需要設置上游分支:請參閱http://stackoverflow.com/a/17096880/6309 – VonC 2014-10-12 08:30:00