问题:

使用

git clone ssh://git@gitlab.xxxx.cn:xxxxxxx.git

默认 clone 的是这个仓库的 master 分支。如果最新的代码不在 master 分支上,该如何拿到呢?

解决办法:

  • 先查看分支
git branch -r #查看远程分支

git branch -a #查看所有分支
  • 分支展示
  origin/HEAD -> origin/master
  origin/dev
  origin/master
  • 切换分支并拉去代码
git checkout -b origin/dev

注:如果直接 git checkout origin/dev 时,会提示

$ git checkout origin/dev
Note: checking out 'origin/dev'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b <new-branch-name>

HEAD is now at a360f43 commit

要使用 -b 选项此操作将创建一个新的分支,并立即切换到新分支。

总结:

git checkout     # 命令在分支之间切换
git checkout -b  # 创建一个新的分支,并立即切换到新分支
git branch -D    # 删除分支。但在删除现有分支之前,请切换到其他分支
git branch -m    # 分支名称重新命名。选项后跟旧的分支名称和新的分支名称来更改/重新命名分支名称

参考地址:https://www.yiibai.com/git/git_managing_branches.html

                  https://gaohaoyang.github.io/2016/07/07/git-clone-not-master-branch/

--------------------------------------时间分割线:2018年11月20日------------------------------------------

创建分支时,不同时产生远程分支问题的解决办法:

在Git Bash Here 中使用git branch 创建新分支时(或是git checkout -b 创建并切换分支时),并不会产生远程分支,即别人是看不到你创建的分支的同时无法切换,效果如下:

同时在idea中看不到新建的test01的分支,效果如下:

接下来我们切换分支到test01并pull一下代码(是不可能成功的,首先没有remote分支,再者分支上也没有上传代码),效果如下:

上面切换分支拉代码,其实未建立远程关联,具体解释可以看这篇博客;完事咱们建立remote连接,效果如下:

上面做远程分支关联时,给出了提示,分两种;第一个提示,如果远程分支已存在,你就“git fetch”一下就OK,但实际上咱们没有远程分支;第二个提示,如果你是一个新的本地分支,就将你本地的代码push上去——"git push -u"(等同于"git push --set-upstream"),所以我们按着第二种方式输入:git push --set-upstream origin test01(此处执行命令时,一定要在master分支中拉去最新的代码,否知会遗失别人的代码,个人感觉。。。。);效果如下:

看着上图提示成功,这时我们用 git branch -r 看看远程分支是否有test01,效果如下:

到此,问题解决。

git fetch 命令用于从另一个存储库下载对象和引用。

注:

https://www.cnblogs.com/chucklu/p/4730745.html

https://www.cnblogs.com/bluestorm/p/6252900.html

https://blog.csdn.net/lppl010_/article/details/79815199

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐