2012-05-02 9 views
0

我嘗試運行多次:不檢查一個分支

git checkout mygithub/master 

遺憾的是它並沒有檢查出這個分支:

git status 
# Not currently on any branch. 
nothing to commit (working directory clean) 

所以,我該怎麼辦簽出分支和推提交?

回答

2
git clone [email protected]:myusername/myrepo.git 
cd myrepo 
git checkout master 

然後編輯文件

git status 
git add . 
git commit 
git push origin master 
+0

git checkout master似乎已經修好了:) – NoBugs

+0

優秀!我喜歡git。 –

1

遺憾的是它並沒有檢查出這個分支

問題其實是它確實簽出分支的(或相反,該部門負責人),但這不是你想要的。

一些背景:當您將遠程(github)添加到本地回購時,本地回購爲該遠程分支的所有分支創建「遠程分支」(github/master)。當你說git checkout github/master時,你告訴git帶你離開任何本地分支,並在當時將你的工作副本更新到遠程回購的狀態。您只能在當地分支機構進行提交,因此是問題所在。有關詳細信息,請參閱git checkout上的文檔。

這樣做git checkout master,你正在做兩件事情:第一,最重要的是,建立一個本地分支叫master在默認情況下被設置爲跟蹤具有相同名稱的任何遠程分支,它可以找到(在這種情況下,希望github/master) ,然後把你放在那個分支上,並用它的內容更新你的工作副本。有關git branch(因爲第一步是創建分支)以及git config下的文檔,請參見branch.autosetupmerge以瞭解幕後的情況。

+0

+1比接受的答案更好 – CharlesB