windows搭建环境   获取远程仓库

  1. 先安装git 下载,然后安装图形界面TortoiseGit  下载
  2. 回到windows桌面,开始——所有程序——TortoiseGit——Settings——Git——选择global
  3. 填上username(您名字的拼音),email(您的@1v.cn邮箱)。请严格按这个方式填写,因为gerrit会验证您的提交username,email和LDAP中账户的username,email是否一致。
  4. 回到windows桌面,开始——所有程序——TortoiseGit——puttygen——generate。在显示进度条的时候,请将您的鼠标在进度条下面的空白区不停移动,因为默认是用鼠标的位置生成随机值,如果你不移动鼠标的话,进度条不走哦!
  5. 进度条读完,public key就生成了,用记事本之类的工具暂时保存这个public key。然后点击save private key按钮,以文件的形式保存这个public key对应的private key,这个文件很重要,之后将用于git clone的验证。
  6. 登录 http://developer.1v.cn:8080/#/,点击右上角的用户名——settings——SSH Public Keys——Add Key。将上一步生成的public key粘贴到这里,然后点击add。
  7. 登录 http://developer.1v.cn:8080/#/,点击Projects——List——点击你要克隆的仓库,你会有三个选择:Anonymous HTTP SSH HTTP。点击SSH,然后复制下面的一行链接(链接类似于:git clone ssh:),之后这个链接将用于定位仓库。
  8. 新建一个空的文件夹,右键git clone。
    • 在URL中输入上一步的链接。
    • Director:选择仓库下载到你本机的位置。
    • Load Putty Key:指定第5步生成的private key的文件路径,到此完成远程仓库的获取

linux搭建环境   获取远程仓库

linux下就没有windows那么复杂了,更多的是简单的命令行

  1. 确保安装了安装了git,openssh
  2. 配置用户名和邮箱,用户名为您名字的拼音,邮箱为@1v.cn邮箱。不可随意填写,因为在gerrit中会有一次匹配过程。
  3. 设置用户名:  git config –global user.name “xxx”
  4. 设置邮箱:  git config –global user.email xxx@1v.cn
  5. 在用户的根目录下执行命令:ssh-keygen,一直回车。
  6. 登录 http://developer.1v.cn:8080/#/,点击右上角的用户名——settings——SSH Public Keys——Add Key。将~/.ssh/id_rsa.pub文件中的内容粘贴到这里,然后点击add。
  7. 登录 http://developer.1v.cn:8080/#/,点击Projects——List——点击你要克隆的仓库,你会有三个选择:Anonymous HTTP SSH HTTP。点击SSH,然后复制下面的一行命令(命令类似于:git clone ssh:),之后这个链接将用于定位仓库。
  8. 执行命令 cd ~ ; mkdir project ; cd project 。 然后执行第八步的复制的命令,完成!

Git + Gerrit的基本步骤


这幅图是我们的工作模式,多个用户共享一个远程仓库。 

正常情况下,我们只需要一些基本操作

  1. 先克隆远程仓库到本地

    git clone ssh://test@203.195.187.71:29418/test_pro

  2. 进入仓库

    cd test_pro

  3. 下载脚本,用于提交gerrit时自动生成change-id。如果忘了这一步,后面可能会经常出错

    scp -p -P 29418 User@IP:hooks/commit-msg .git/hooks/

  4. 增加可执行权限

    chmod a+x .git/hooks/commit-msg

  5. 修改文件

    echo "add new content!">file

  6. 将文件放入暂存区

    git add file

  7. 提交到本地

    git commit -am 'msg'

  8. 推送到gerrit等待审核

    git push origin master:refs/for/master

  9. 将远程仓库同步到本地,请考虑冲突问题

    git pull origin master

  10. :

    跳到第4步

如果两个开发者从中心仓库克隆代码下来,同时作了一些修订,那么只有第一个开发者可以顺利地把数据推送到共享服务器。第二个开发者在提交他的修订之前,必须先下载合并服务器上的数据,解决冲突之后才能推送数据到共享服务器上。 如果你push的时候出现了To prevent you from losing history, non-fast-forward updates were rejected。说明别人已经提交了,你的提交跟他有冲突。这是你必须用git pull origin master命令从仓库拉取最新的版本,手动解决跟你自己的修改之间的冲突之后,才能push回仓库。

git-gerrit相关推荐

  1. git gerrit 拉取本地服务器代码出错Unable to negotiate with XX.XX.XX.XX port XX: no matching key exchange me

    ssh 方式 git gerrit 拉取本地服务器代码出错ssh拉取项目 Unable to negotiate with XX.XX.XX.XX port XX:: no matching key ...

  2. 构建git+gerrit+repo的Android代码服务器

    谷歌的Android源码是基于Git+Repo管理的,官方推荐的代码管理也是git+gerrit+repo.谷歌自己都在用的东西,各种优点,各种强大就不用说了,你懂的.关于它们的介绍可查阅极客学院的W ...

  3. 手把手教你搭建自己的git+gerrit代码评审服务器

    有问题可以到公众号嵌入式linux阿财留言交流 你可能遇到过这样的问题,不知道如何管理自己的代码.自己开发的代码,过了几天,忘记修改了什么,忘了上次改到哪了,代码突然找不到了等等,甚至容易消磨自己的耐 ...

  4. [How TO]-git/gerrit配置方法

    1.生成ssh key 在ubuntu终端敲击命令,然后会在.ssh目录下生成一组密钥对: ssh-keygen -t rsa 2.配置config 如果没有config文件,自己在.ssh/下建一个 ...

  5. git+gerrit+jenkins+sonar 持续集成开发环境搭建

    1:安装git yum -y install git 安装成功之后:git version 1.8.3.1 2:安装apache yum install httpd –y service httpd ...

  6. Git代码管理常用指令(Git+Gerrit)

    从远程仓库下载新的代码后,需创建本地仓库关联后,在本地仓库开发 git clone... // 克隆远程仓库代码 git branch <branch> // 创建本地仓库 git pul ...

  7. 通用方法 windows下安装Git +Gerrit环境以及配置提交日志模板

    1. 账号激活 2. 直接搜git for windows下载安装客户端 3. ssh key生成 执行$ ssh-keygen -C test@example.com,完成后,会生成公钥文件id_r ...

  8. Gitlab+Gerrit+Jenkins完整对接

    近年来,由于开源项目.社区的活跃热度大增,进而引来持续集成(CI)系统的诞生,也越发的听到更多的人在说协同开发.敏捷开发.迭代开发.持续集成和单元测试这些拉风的术语.然而,大都是仅仅听到在说而已,国内 ...

  9. CI持续集成系统环境--Gitlab+Gerrit+Jenkins完整对接

    原文地址https://www.cnblogs.com/kevingrace/p/5651447.html 近年来,由于开源项目.社区的活跃热度大增,进而引来持续集成(CI)系统的诞生,也越发的听到更 ...

  10. [原创]CI持续集成系统环境--Gitlab+Gerrit+Jenkins完整对接

    近年来,由于开源项目.社区的活跃热度大增,进而引来持续集成(CI)系统的诞生,也越发的听到更多的人在说协同开发.敏捷开发.迭代开发.持续集成和单元测试这些拉风的术语.然而,大都是仅仅听到在说而已,国内 ...

最新文章

  1. ATLAS入门篇之HoverMenuExtender控件编程(2)
  2. 在Mac OS X上安装 Ruby运行环境
  3. 软件相关模块与ansible剧本
  4. jenkis编译报错:需要class,interface或enum
  5. Linux系统调用的运行过程【转】
  6. Pandas文本处理双雄extract+extractall
  7. c++对象的动态建立和释放
  8. 模块降额设计_模块电源需要注意的四个点
  9. c#中invoke和beginvoke的区别
  10. 约束,MySQL约束,非空默认值,主键外键唯一自增,完整详细可收藏
  11. linux内存分配器类型,内核早期内存分配器:memblock
  12. HDU1066 Last non-zero Digit in N!【大数+模除】
  13. excel如何把顺序倒过来_如何在筛选后的表里复制粘贴数据到同行
  14. 串口读取gps信息php,Linux串口读取GPS数据
  15. Java经典程序编程50题(较适合初学者)
  16. AT89C51单片机共阳极数码管动态显示(汇编语言)
  17. 生动理解java接口
  18. 拍摄独特人像的技巧(下)
  19. 没有 XXX 的手册页条目问题解决
  20. PHP isset()和empty()区别

热门文章

  1. Linux—用prctl()给线程命名
  2. linux 端口复用后门,一条命令实现端口复用后门
  3. 7-26 最大公约数和最小公倍数 (C语言)
  4. CSV 转 JSON
  5. 2014Matlab最小二乘拟合函数,怎样输出matlab最小二乘拟合曲线的表达式
  6. 详谈高大上的图片加载框架Glide
  7. 【星海随笔】Centos8试用jupyter问题合集
  8. CentOS使用Xstart远程图形桌面
  9. python输入一个假分数_苏教版五下数学四分数的意义和性质第5课时假分数化成整数或带分数教案...
  10. vlfeat在ubuntu下安装用于C/C++