二 克隆Git仓库

    1.1 从远程仓库中克隆整个代码仓库

mkdir Demo  //在当前路径下新建一个文件夹,用来存放将要拉取的整个代码库

cd Demo           //进入这个文件夹

repo init -u ssh://igerrit.storm:29418/Demo/manifest -b master

    //-u :指定一个URL,其连接到一个manifest仓库

    //-m:在manifest仓库中选择一个xml文件

    //manifest:manifest是远程仓库里的一份清单,init的时候就是按照这份清单从服务器进行同步的

    //ssh://igerrit.storm:29418/Demo/ :是一个远程服务器的地址,地址可以是私人的也可以是共有的,共有的表示代码是公开的

     //-b:表示后接分支名,可以是master,也可以是其他分支

repo sync //这是一个封装的命令,用来同步代码。 上一步应该用时比较少,这一步用时较长

repo start master  --all  //这也是一个封装的命令,用来切分支的。这一步不可缺少 ,意为将拉下来的版本库都切换到master分支,如果不做这一步,克隆下来的所有仓库默认是no branch状态,容易导致后面工作时添加的代码丢失

    1.2 克隆单个仓库

git clone https://github.com/×××  从远程库中克隆,克隆一个版本库到新的目录,可以在当前目录新建一个文件夹,也可以git clone [地址] [本地目录]

    git clone ssh://igerrit.storm:29418/tools/repo.git // 同上,

    之后 git pull origin master //origin是远程主机,master是默认分支

    要克隆一个仓库,首先必须知道仓库的地址,然后使用git clone命令克隆。

    Git支持多种协议,包括https,但通过ssh支持的原生git协议速度最快

    单一仓库的更新可以使用git pull命令。

    repo init完成的操作如下:

  (1):完成repo 工具的完整下载,执行的repo脚本只是引导程序

  (2):克隆清单库manifest.git(地址来自于-u参数)

  (3):克隆的清单库位于manifest.git中,克隆到本地.repo/manifests.清单,.repo/manifest.xml只是符号链接,它指向.repo/manifests/default.xml文件,

    repo sync:用于参照清单文件.repo/manifest.xml克隆并同步版本库。如果某个版本库尚不存在,则执行repo sync命令相当于执行git clone。如果项目版本库已经存在,则相当于执行下面的两条指令:

  (1):git remote update //相当于对每一个remote源执行了fetch操作

  (2):git rebase origin/branch //针对当前分支的跟踪分支执行rebase操作

    repo start:创建并切换分支,是对git checkout -b命令的封装 //如果存在分支则切换分支,若不存在则创建并切换

区别是repo start 是在清单文件设定分支的基础上创建特性分支,git checkout是在当前所在分支的基础上创建特性分支,如果是针对于整个版本库,那么相当于 repo forall -c git checkout -b

题外:在使用这些命令克隆仓库之前,我们是需要配置一些环境,如ssh的key,用户名,邮箱名等等

如果公司使用的是私有github,在初始化仓库之前需要若是初始化仓库的时候出现提示仓库已经初始化,那么可以尝试删除本地的.repo

Git clone 常见用法的更多相关文章

  1. GIT 的常见用法

    git init 新建代码库 git clone新建项目 git branch 查看分支 git config 显示配置 git config -e 显示配置文件 git config user.na ...

  2. Git push 常见用法

        Git push 在使用git commit命令将修改从暂存区提交到本地版本库后,只剩下最后一步将本地版本库的分支推送到远程服务器上对应的分支了,如果不清楚版本库的构成,可以查看我的另一篇,g ...

  3. Git commit 常见用法

        Git commit git commit 主要是将用户通过git add命令添加到暂存区里的改动给提交到本地的版本库,关于版本库的构成可以查看我先前的笔记. 每次提交我们都会在本地版本库生成 ...

  4. Git stash 常见用法

    Git stash git stash这个命令可以将当前的工作状态保存到git栈,在需要的时候再恢复 1.1 git stash  保存当前的工作区与暂存区的状态,把当前的工作隐藏起来,等以后需要的时 ...

  5. Git branch 和 Git checkout常见用法

    git branch 和 git checkout经常在一起使用,所以在此将它们合在一起 1.Git branch 一般用于分支的操作,比如创建分支,查看分支等等, 1.1 git branch 不带 ...

  6. Git diff 常见用法

      Git diff 用于比较两次修改的差异 1.1 比较工作区与暂存区 git diff  比较的是单个仓库的工作区与暂存区的差别,repo diff是对git diff的封装,用来分别显示各个项目 ...

  7. Git reset 常见用法

    Git reset 1. 文件从暂存区回退到工作区 2. 版本回退 1.1 git reset HEAD filename :回退文件,将文件从暂存区回退到工作区 //也可以使用 git reset ...

  8. Git add 常见用法

        Git add   git add [参数]  [--] <路径> //作用就是将我们需要提交的代码从工作区添加到暂存区,就是告诉git系统,我们要提交哪些文件,之后就可以使用gi ...

  9. Git branch && Git checkout常见用法

    https://www.cnblogs.com/qianqiannian/p/6011404.html git branch 和 git checkout经常在一起使用,所以在此将它们合在一起 1.G ...

随机推荐

  1. 初步接触ES6

    Babel---ES6转码器 ES6 声明变量的六种方法 ES5 只有两种声明变量的方法:var命令和function命令. ES6除了添加let和const命令,另外两种声明变量的方法:import ...

  2. 利用angularjs完成注册表单

    ng-init="username = 'first'"设置初始显示first字段 ng-class="{'error':signUpForm.username.$inv ...

  3. hdu 6070 Dirt Ratio 线段树+二分

    Dirt Ratio Time Limit: 18000/9000 MS (Java/Others)    Memory Limit: 524288/524288 K (Java/Others)Spe ...

  4. Servlet模板,一个供新手参考的模板

    由于这学期老师的进度是刚开始教JavaSE部分,而我的进度比较快,所以买了3本javaee的书,我根据自己的基础,选择了合适的开发实践,另外两本书都和框架相关,我自认为我的web基础还不是很牢固,所以 ...

  5. java中如何认定一个变量和方法

    对于变量,用变量名就可以认定.对于a ,你不能要求它既是int,又是double.这是错误的: 同理,对于方法,它的方法签名是:方法名+参数     通过签名,已经认定一个方法.你不能要求一个方法有多 ...

  6. vue模拟后端获取数据——json-server与express

    转载自: https://blog.csdn.net/weixin_39728230/article/details/80293892 https://blog.csdn.net/lxkll/arti ...

  7. 《剑指offer》第四十二题(连续子数组的最大和)

    // 面试题42:连续子数组的最大和 // 题目:输入一个整型数组,数组里有正数也有负数.数组中一个或连续的多个整 // 数组成一个子数组.求所有子数组的和的最大值.要求时间复杂度为O(n). #in ...

  8. eclipse 配置打开工作空间

    转载自: https://www.cnblogs.com/qq1871707128/p/6093860.html 首先得有eclipse 一.在eclipse的菜单栏中点击 Run -->Ext ...

  9. Implicit super constructor Object() is undefined for default constructor. Must define an explicit constructor

    转自:https://blog.csdn.net/u013125680/article/details/43887987 解决方案:把java的类库加载进去,在工程上右键选择属性->Java B ...

  10. Java访问ActiveMQ

    1.下载安装ActiveMQ 下载可以去官网下载:http://activemq.apache.org/download.html.我们这里使用windows测试,所以下载windows版本即可. 2 ...