克隆分支:远程分支 branch-99 not found in upstream origin

Cloning a branch : Remote branch branch-99 not found in upstream origin

如何使用特定分支名称从 git 克隆分支?

我有一个名为 branch-99 的分支,我的用户名为 Istiak

我尝试像这样克隆我的分支:

git clone -b branch-99 git@github.istiak/admin.git

我收到这个错误。

fatal: Remote branch branch-99 not found in upstream origin

我做错了什么?

git clone git@github.com:Christoffer/admin.git
git checkout branch-99

branch-99 在远程存储库中不存在。您可能拼错了分支名称或存储库。

要检查存在哪些分支,请使用 ls-remote。您可以在遥控器上使用它...

git ls-remote --heads origin

或者,如果您尚未克隆存储库,请在 URL.

git ls-remote --heads git@github.com:Christoffer/admin.git

您将获得提交 ID 和分支名称,但它们将是完整的引用,例如 refs/heads/<branch>

8c2ac78ceba9c5265daeab1519b84664127c0e7d    refs/heads/fix/that
6bc88ec7c9c7ce680f8d69ced2e09f18c1747393    refs/heads/master
83f062226716bb9cebf10779834db1ace5578c50    refs/heads/branch-42

有关更多信息,请参阅 gitrevisions


明确地说,git clone -b branch-99 git@github.com:Christoffer/admin.git 克隆了整个存储库。它只签出 branch-99 而不是 master。与...相同

git clone git@github.com:Christoffer/admin.git
git checkout branch-99

那点语法糖是不值得的。我想这可能会为您节省一点时间,而不必结帐大师。

如果你只想克隆一个分支的历史记录以节省一些网络和磁盘space使用--single-branch

git clone --single-branch -b branch-99 git@github.com:Christoffer/admin.git

然而通常不值得这么麻烦。 Git 磁盘和网络效率很高。并且必须克隆该分支的整个历史,这通常包括大部分存储库。