git clone 下载所有分支

发布时间:2023-11-01浏览次数:555 次
默认情况下,我们使用 git clone 命令下载来的项目,只包含当前默认分支(github/gitee在设置项中设置的默认分支)。github切换默认分支仓库

默认情况下,我们使用 git clone 命令下载来的项目,只包含当前默认分支(github/gitee在设置项中设置的默认分支)。

github切换默认分支

仓库下载完成后,我们使用

git branch -v

的命令查看本地分支,会发现只有pic分支(即线上的默认分支)。

 

分支前的*星号代表当前所在分支。使用命令:

git branch -a

可查看远程分支,结果如下(绿色的为本地分支,红色的为远程分支):

如果此时我们需要查看master分支的内容,之前我错误的使用了命令:

git checkout remotes/origin/master

的方式进行切换分支,但是会出现警告信息,而且当有很多分支的时候,这样切换效率就有些低了。

警告信息中提示我们可以使用命令:

git switch -c remotes/origin/master

来创建并切换分支。(这里需要注意,在切换本地分支时,我们可以使用 git checkout 分支名 也可以使用 git switch 分支名,但在这里只能使用 switch命令)

使用该命令后,会在本地创建一个名为:remotes/origin/master的分支名,这样我们切换起来还是很不方便的,而且更主要的是,并未达到切换至线上master分支的目的。最佳的解决方案是,我们可以直接使用 master来作为分支名。

使用命令:

git branch -D remotes/origin/master

删除我们刚才创建的分支。我们使用命令。

正确的做法是,在查看了 git branch -a远程分支之后,直接使用命令

git checkout master

即可,下面的提示信息:

即分支“master”设置为跟踪“origin/master”。当然,我们也可以换一个别名对远程分支进行跟踪,使用如下命令即可:

git branch new_master remotes/origin/master

即 git branch 分支名 远程被跟踪分支名

注意和本地分支名重命名的命令进行区别,本地分支名重命名的命令是:

git branch -m 旧分支名 新分支名

使用 git branch -v 重新查看本地分支,会发现已创建与远程master对应的new_master的分支。

这里还需要注意一点,如果我们使用和远程分支同名的分支时,push时,直接push即可,命令如下:

git push origin

git push origin HEAD (这条命令是为了和下面的命令对应起来方便记忆)

如果我们本地的分支和远程的分支名不相同,此时push需使用如下命令:

git push origin HEAD:master

所以一般情况下,还是建议线上和本地的分支名称保持一致。另外,关于git clone下载所有分支,还有一种使用 git clone --bare 命令的方式,不过个人觉的本篇所讲述的方法使用起来最方便。

扫一扫,在手机上查看