Git Hub一次克隆所有分支
我试图使用linux将整个存储库克隆到我的机器上。 我用了
git clone <url>
然后我进入下载并键入的文件夹
git branch
在终端。 它只向我显示主人,而不是显示在远程存储库中的其他分支。 我如何克隆所有分支机构?
我知道对于远程中的每个分支我都可以单独使用
git checkout -b <name of local branch> origin/<name of remote branch>
但除此之外还有其他办法吗?
(1)在git local repostitory里面,创建一个新的sh文件
touch getAllBranches.sh
vi getAllBranches.sh
(2)将以下内容插入到getAllBranches.sh
文件中:
for branch in `git branch -a | grep remotes | grep -v HEAD | grep -v master `; do
git branch --track ${branch#remotes/origin/} $branch
done
(3)获取所有分支机构:
chmod +x getAllBranches.sh
sh getAllBranches.sh
(4)在本地存储库检查结果:
git branch
例如,我使用存储库:https://github.com/donhuvy/spring-boot
正如你所看到的,我已经将所有分支取到本地机器:
这不是太复杂,非常简单直接的步骤如下:
克隆回购后,运行$ cd myproject
git branch -a
这会显示所有的远程分支。
$ git branch -a
* master
remotes/origin/HEAD
remotes/origin/master
remotes/origin/v1.0-stable
remotes/origin/experimental
如果你想在远程分支上工作,你需要创建一个本地跟踪分支:
$ git checkout -b experimental origin/experimental
通过以下命令验证您是否在所需的分支中;
$ git branch
输出会是这样;
*experimental
master
some branch2
some branch3
注意表示当前分支的*符号。
它只向我显示主人,而不是显示在远程存储库中的其他分支。 我如何克隆所有分支机构?
分支实质上是提交的指针。 当你做一个git clone
(或一个git fetch
)时,你可以从远程仓库及其所有分支中检索所有提交。
但是,默认情况下, git branch
不显示远程分支。 相反,它向您显示您的本地分支机构,这些分支机构可能与远程存在的分支机构有任何关系。 如果你运行git branch --all
,git会报告它所知道的所有分支,包括本地和远程分支。
值得注意的是,标签不以这种方式操作,并且本地和远程标签之间没有区别。
链接地址: http://www.djcxy.com/p/4443.html