我正在使用git
版本1.8.3.1
(分數7)。我在github上有一堆分支。我克隆了一個倉庫,並嘗試看看這些分支之一,但它不會讓我:查看存在於遠程的分支
$ git clone my_repo
$ cd my_repo
$ git checkout my_desired_branch
error: pathspec 'my_desired_branch' did not match any file(s) known to git.
我知道,這個分公司在遠程分支的存在;我從另一臺計算機上推出它,並且我可以在github上檢查出它沒有問題。閱讀關於堆棧溢出的類似問題,答案似乎不盡相同:
$ git fetch [--all]
$ git pull [--all]
但是,這些東西都不能解決我的問題。此外,無論我做什麼,沒有什麼,除了主分支顯示出來,當我列出我的分支:
$ git branch
* master
$ git branch -a
* master
remotes/origin/HEAD -> origin/master
remotes/origin/master
$ git branch -r
origin/HEAD -> origin/master
origin/master
我也無法通過哈希從回購迎接我的分支:
$ git fetch origin 6175e3ae4c88669af8aa5cd12b
這命令有任何輸出,即使--verbose ......但檢查退出代碼表明,它是1,當然還有:
$ git checkout 6175e3ae4c88669af8aa5cd12b
fatal: reference is not a tree: 6175e3ae4c88669af8aa5cd12b
這真是令人沮喪。在這一點上,我已經試過看似fetch
,pull
,,branch
的所有可能的組合,不管我做什麼,我都無法得到我的本地克隆這個回購甚至顯示這些分支存在,更不用說讓我檢查他們出去了。
這裏發生了什麼?這似乎是世界上最簡單的事情:考慮到我的回購有一些我想要的分支,請克隆回購並檢查該分支。
試試這個命令和後輸出:'git的貓文件-p 6175e3ae4c88669af8aa5cd12b'如果SHA存在,它會告訴你它是什麼。如果它指向一個文件,它將輸出文件。如果是提交,它將輸出提交詳細信息。我猜測SHA是未知的,或者指向文件而不是提交。我也可能會在之前做一個'git fetch origin'。 – CodingWithSpike
'git remote -v'給你什麼? – alextercete