2011-02-18 43 views
1

不知道我如何管理這個,但我不能創建一個本地和遠程分支了。突然不能創建本地/遠程git分支

~/myapp(master) > git checkout -b new_feature origin/new_feature 
fatal: git checkout: updating paths is incompatible with switching branches. 
Did you intend to checkout 'origin/new_feature' which can not be resolved as commit? 

我試過重新克隆我的應用程序,以防萬一.git目錄被破壞,但沒有運氣。有什麼建議麼?

+0

您需要注意術語「遠程分支」。它通常意味着你自己的倉庫中的一個ref,它指的是遠程倉庫中分支的最近提取位置。這聽起來像是你試圖在遠程倉庫中實際創建一個分支*;如果它尚不存在,則必須按照答案中的描述進行推送。 – Cascabel 2011-02-18 05:53:00

+0

Jefromi,謝謝,但我很困惑你的意思是關於遠程分支「通常意味着在你自己的倉庫中的ref」。是不是我自己的倉庫中的一個分支是本地分支?無論如何,你是對的 - 解決方案是先創建一個遠程分支。 – Zubin 2011-02-19 07:11:37

回答

3

您不能以這種方式創建遠程分支,您需要先創建git checkout -b new_feature以創建新的本地分支,然後使用git push origin new_feature將分支推送到遠程。

+0

謝謝安德魯,現貨!我錯誤地認爲遠程分支也是自動創建的。這個命令以前有效,但事後看來,遠程分支必須已經存在。 – Zubin 2011-02-19 07:02:29

2

嘗試其中之一:

  • 要創建本地分支:git branch some_branch

  • 要使用(結賬)分支(這不是自動):git checkout some_branch

  • 創建遠程分支:git push origin origin:refs/heads/some_branch

  • 要結帳(並跟蹤)遠程麩皮ch(創建local_branch,如果它還不存在):git branch --track local_branch origin/remote_branch

相關問題