• 例如:将gitLab 上的dev分支拉取到本地
git checkout -b dev origin/dev  在本地创建分支dev并切换到该分支

git pull origin dev             就可以把gitLab上dev分支上的内容都拉取到本地了

git pull 和  git fetch 的区别 https://blog.csdn.net/weixin_41975655/article/details/82887273

参考  https://blog.csdn.net/qq_40973353/article/details/80682891
  • git如何利用分支进行多人开发 

在使用git时,假如远程仓库有 dev 和 master 两个分支,master 作为一个稳定版分支,可用于直接发布产品,日常的开发则 push 到 dev 分支,那本地是不是要从 dev 分支中创建一个本地分支,然后在这个分支的 push 的动作是默认推到远程 dev 分支上?

重点:自己的开发分支永远只能从master拉取;
参考 https://www.cnblogs.com/kexianting/p/8525732.html
 
  1. 克隆代码 
    1. git clone git@github.com:XX/master-dev.git   #这个git路径是无效的,示例而已
  2. 查看所有分支 
    1. git branch --all
      # 默认只有master分支,所以会看到如下两个分支
      # master[本地主分支] origin/master[远程主分支]
      # 新克隆下来的代码默认master和origin/master是关联的,也就是他们的代码保持同步
  3. 创建本地新的dev分支 并且 关联origin/dev的分支
    1. (如果远程不存在origin/dev)git checkout -b dev ;git push origin dev # 这样远程仓库也有一个dev分支了;这个时候可以使用 git branch --set-upstream-to=origin/dev dev 和远程dev关联,这样可以直接使用git push
      (如果远程已经存在origin/dev)git checkout -b dev origin/dev # 创建本地分支dev,并且和远程origin/dev分支关联,本地dev分支的初始代码和远程的dev分支代码一样;
  4. 在dev分支开发代码
    1. git checkout dev  # 切换到dev分支进行开发
      # 开发代码之后,我们有两个选择
      # 第一个:如果功能开发完成了,可以合并主分支
      git checkout master # 切换到主分支
      git merge dev # 把dev分支的更改和master合并
      git push # 提交主分支代码远程
      git checkout dev # 切换到dev远程分支
      git push # 提交dev分支到远程
      # 第二个:如果功能没有完成,可以直接推送
      git push # 提交到dev远程分支
      # 注意:在分支切换之前最好先commit全部的改变,除非你真的知道自己在做什么
  5. 删除分支
  • git push origin --delete dev # 删除远程dev分支,危险命令哦 # 下面两条是删除本地分支 git checkout master # 切换到master分支 git branch -d dev # 删除本地dev分支 (项目中在git上原本只有maser分支, 拉倒本地新建dev分支, 然后通过上述第二种方式将dev分支推到git服务器, git服务器上有master和dev两个分支, 一般开发是会在本地的dev分支上开发, 然后推送到git服务器上dev分支, 并且在master分支上和本地的dev分支合并, 并将本地的master分支推送到git服务器上的mater分支上, 作为发布的mater分支)

   多人合作代码提交实践

  • 前言:有的时候我们需要跟别人合作进行开发(使用不同的Git分支),等项目完成时,需要进行代码合并,就需要知道Git如何合并远程分支。
  • b: 公共分支 ; a: 自己的分支
  1. git checkout -b b origin/b 在本地新建一个与远程的分支b相同(被合并的版本)的分支b :该指令的意思:创建一个本地分支,并将远程分支放到该分支里面去。
  • 如果测试环境用自己的分之的操作
  1. git pull origin b 将远程代码pull到本地
  2. git checkout a 返回到你的分支a
  3. git merge b 合并分支a与分支b
  4. git push origin a
  • 如果测试环境用公共的分之的操作
  1. git checkout master ;git pull
  2. git checkout a ;git merge master
  3. git checkout b ;git merge a
  4. git push origin b
  • 参考 https://blog.csdn.net/DeMonliuhui/article/details/78510678

git 操作 :从远程仓库gitLab上拉取指定分支到本地仓库;git如何利用分支进行多人开发 ;多人合作代码提交实践的更多相关文章

  1. git从远程仓库gitLab上拉取指定分支到本地仓库

    例如:将gitLab 上的dev分支拉取到本地 1>与远程仓库建立连接:git remote add origin XXXXX.git 2>使用git branch 查看本地是否具有dev ...

  2. 【docker】【mysql】docker安装mysql,阿里云docker镜像加速器,docker搜索查看远程仓库上的镜像,docker拉取镜像,查看本地所有镜像,查看容器的运行状况,查看容器的详细信息

    在docker上安装mysql有两种方式 1.通过Dockerfile构建 2.直接在docker hub上拉取镜像安装 =================本篇采用方法2=============== ...

  3. idea从git上拉取并管理项目

    1:idea从git上拉取项目 (1)FILE --> New --> Project from Version Control --> Git (2):输入项目的Https SSH ...

  4. git上拉取tag,识别最新tag在此版本上新增tag

    通过shell 脚本自动获取最新tag,并输入最新版本后,推到git上 # 拉取分支上现有的tags git fetch --tags echo -e "所有tag列表" git ...

  5. git如何拉取指定分支的代码

    问题背景: 新项目还在开发阶段,没有正式对外发布,所以开发同事合并代码到develop上(或者其他名称分支上),而不是到master分支上 通过git拉取代码的时候,默认拉取的是master分支,如下 ...

  6. 自动备份远程mongodb数据库并拉取到本地

    自动备份远程mongodb数据库并拉取到本地 目标: 远程服务器 .1中的mongodb数据拉回公司测试服务器中 .远程服务器中编写自动备份mongodb脚本 ①编写脚本 # vim /opt/bac ...

  7. 从gitHub上拉取并运行项目

    今天我们来试一下如何从gitHub上拉取一个项目并且运行起来,话不多说,我们直接开搞可好 1.首先我们先获取到项目地址(此处我以自己的项目地址作为示例) 我们选择红圈处的clone or downlo ...

  8. 使用git在gitlab上拉取代码的方法

    最近在项目中用到了gitlab,他是一个类似于github的代码托管工具. 因为是第一次使用还不太熟悉,所以在此记录一下. 1.首先需要使用github的注册账号登录gitlab,查看右上角用户头像处 ...

  9. 使用Jenkins的Git Parameter插件来从远程仓库拉取指定目录的内容

    更换插件安装源 系统管理---插件管理---高级---升级站点,把默认的插件下载地址换成下面这个: https://mirrors.tuna.tsinghua.edu.cn/jenkins/updat ...

随机推荐

  1. Spring Data JPA:解析SimpleJpaRepository

    源码 SimpleJpaRepository的定义如下: /** * Default implementation of the {@link org.springframework.data.rep ...

  2. java批量下载文件为zip包

    批量下载文件为zip包的工具类 package com.meeno.trainsys.util; import javax.servlet.http.HttpServletRequest; impor ...

  3. Jemeter压力测试

    Jmeter教程 简单的压力测试 Jmeter是一个非常好用的压力测试工具.  Jmeter用来做轻量级的压力测试,非常合适,只需要十几分钟,就能把压力测试需要的脚本写好. 转载自小坦克:https: ...

  4. 华为oj-判断输入的字符串是不是一个有效的IP地址

    题目标题: 判断输入的字符串是不是一个有效的IP地址 详细描述: 请实现如下接口 boolisIPAddressValid(constchar* pszIPAddr) 输入:pszIPAddr 字符串 ...

  5. 关于PLSQL中的一些问题总结:在PLSQL中书写DDL等

    关于问题前导,使用的数据表中涉及到的字段和类型: 在PLSQL中create.drop.truncate等DDL是没有办法直接执行的. 必须要使用: Execute immediate 'DDL语句' ...

  6. 使用GZIP压缩网页内容(一)

    在JDK中提供了GZIP压缩,来压缩网页的内容,降低网络传输时候的字节数,到达浏览器端的时候,再解压,GZIP压缩之后传输耗费的流量大大降低,但是同时也不会降低用户体验. package day04; ...

  7. NLP与深度学习(二)循环神经网络

    1. 循环神经网络 在介绍循环神经网络之前,我们先考虑一个大家阅读文章的场景.一般在阅读一个句子时,我们是一个字或是一个词的阅读,而在阅读的同时,我们能够记住前几个词或是前几句的内容.这样我们便能理解 ...

  8. 《手把手教你》系列技巧篇(二十三)-java+ selenium自动化测试-webdriver处理浏览器多窗口切换下卷(详细教程)

    1.简介 上一篇讲解和分享了如何获取浏览器窗口的句柄,那么今天这一篇就是讲解获取后我们要做什么,就是利用获取的句柄进行浏览器窗口的切换来分别定位不同页面中的元素进行操作. 2.为什么要切换窗口? Se ...

  9. JavaScript——字符串——模板字符串

    JavaScript--字符串--模板字符串 字符串可以用反引号包裹起来,其中的${expression}表示特殊的含义,JavaScript会将expression代表的变量的值和反引号中的其它普通 ...

  10. .ssh/config 常用配置

    不用每次都 -i 指定密钥,且避免连接自动断开 ControlMaster auto ControlPath ~/.ssh/connection-%r@%h:%p ControlPersist 4h ...