精华内容
下载资源
问答
  • Gerrit使用教程详解

    万次阅读 2019-10-14 14:15:15
    1、gerrit 使用教程(一) https://www.cnblogs.com/111testing/archive/2018/08/09/9450530.html 2、git 上传本地代码到远程仓库 https://www.cnblogs.com/111testing/p/7663229.html 3、git log 查看提交历史 ...

    个人觉得这几篇博客介绍挺详细的,收藏转发分享:

    1、gerrit 使用教程(一)
    https://www.cnblogs.com/111testing/archive/2018/08/09/9450530.html

    2、git 上传本地代码到远程仓库
    https://www.cnblogs.com/111testing/p/7663229.html

    3、git log 查看提交历史
    https://www.cnblogs.com/111testing/p/7781216.html

    4、【Gerrit】Gerrit工作流程及使用手册
    http://lipeng1667.github.io/2017/01/18/gerrit-guide/

    展开全文
  • GERRIT使用手册.pdf

    2020-11-30 16:54:46
    GERRIT使用手册
  • gerrit 使用教程(一)

    千次阅读 2018-08-09 17:43:00
    Gerrit实际上一个Git服务器,它为在其服务器上托管的Git仓库提供一系列权限控制,以及一个用来做Code Review是Web前台页面。当然,其主要功能就是用来做Code Review。 2, Gerrit用户配置 Email激活 Gerrit账户的...

    原文地址:https://www.jianshu.com/p/b77fd16894b6

    1, Gerrit是什么?

    Gerrit实际上一个Git服务器,它为在其服务器上托管的Git仓库提供一系列权限控制,以及一个用来做Code Review是Web前台页面。当然,其主要功能就是用来做Code Review。

    2, Gerrit用户配置

    • Email激活
      Gerrit账户的设置界面,点击“Contact Information”进入Email Register页面,输入自己的邮箱账户(此邮箱需要与自己的Git配置一致)。可以配置多个Email账号。
     
    Contact Information
    • SSH key配置
      通过以下命令生成并读取本机ssh key:
    ssh-keygen -t rsa
    cat ~/.ssh/id_rsa.pub
    

    Copy key的内容,在Gerrit账户的设置页面“SSH Public Key”中加入即可。

     
    ssh-key

    3, Gerrit日常使用

    3.1 获取代码库

    登录Gerrit后在Projects-->List, 选择相应工程your_project,进入该工程的General界面。
    选中“clone with commit-msg hook”和“SSH”:

    git clone ssh://your_account@review.xxxxx.com:29418/your_project && scp -p -P 29418 your_account@review.xxxxx.com:hooks/commit-msg cic-android/.git/hooks/
    

    拷贝以上命令在自己本地Git命令行窗口执行即可拉取库代码。

    3.2 Gerrit工作流程

    3.2.1 上传一个commit

    Gerrit相对Git提供了一个特有的命名空间“refs/for/”用来定义我们的提交上传到哪个branch,且可以用来区分我们的commit是提交到Gerrit进行审核还是直接提交到Git仓库,格式如下:

    refs/for/<target-branch> 

    Push一个Commit到Gerrit:

    $ git commit
    $ git push origin HEAD:refs/for/master
    

    直接Push一个commit到Git仓库:(我们默认配置成不允许)

    $ git commit
    $ git push origin HEAD:master
    

    当我们的commit Push到Gerrit等待review时,Gerrit会将此commit保存在一个名为“refs/changes/xx/yy/zz”的一个暂存branch中。
    其中zz为这个commit的patch set号,yy是change号,xx是change号的后两位。

    例如我们工程中的这个大明同学的提交:

    http://review.xxxxx.com:9090/#/c/545/
    

    一共提交了9次patch,那么第9个patch就保存在一个名为“refs/changes/45/545/9”的branch中。

    可以通过Gerrit页面中该commit右上角的Download按钮验证,比如说我们选择“Cherry Pick”, 命令如下:

    git fetch ssh://your_account@review.xxxxx.com:29418/your_project refs/changes/45/545/9 && git cherry-pick FETCH_HEAD
    

    在此,有必要说下几个概念,以便理解:

    • Change
      一个Change包含一个Change-Id,这个Id就是通过我们拉取代码库的时候所拷贝的hooks(hooks/commit-msg)自动生成的。
      包含一个或多个Patch Set,以及诸如Owner,Project,Target branch,Comments等信息。

    • Change-Id
      Change-Id是一串SHA-1字符串。有hooks自动生成在我们的commit message下面:

    Feature:Music play.
    BugId:/
    Description:Music play.
    
    Change-Id: I3d087f04d9d94bfaa93b8609b988b300af537497
    

    在一个project的每个branch中Change Id是唯一的。

    • Patch Set
      一个Patch Set就是一次commit,Gerrit会将其生成一个Branch暂存。Change中的每提交一个Patch Set表示这个Change的一个新的版本,自动覆盖前一个Patch Set, 默认情况下,仅最后一个Patch Set是有意义的。Code Review通过时,也仅仅是最后一个Patch Set会合并到指定的branch中。

    个人Git工作原则一
    ** 永远是基于远程库的最新代码工作,尽量每一步操作(特别是add/commit/push)都通过git pull --rebase获取一下当前最新版本。**

    根据以上原则,建议在将本地commit push到Gerrit之后,立马reset掉,或者重新切换一个新的分支工作。

    3.2.2 上传一个新的patch set

    当我们的commit被reviewer打回来时,我们可能需要修改并重新提交。
    如果我们的代码在本地分支已经reset掉,可以通过Gerrit页面提供的Download方式获取:

    // fetch and checkout the change
    // (checkout command copied from change screen)
    $ git fetch ssh://your_account@review.xxxxx.com:29418/your_project refs/changes/45/545/9 && git checkout FETCH_HEAD
    

    如果之前是通过切换分支方式工作的,可以重新切换回包含此commit的分支而无需执行上述命令,然后可以在此代码基础上进行修改,重新add,amend commit:

    // rework the change
    $ git add <path-of-reworked-file>
    ...
    
    // amend commit
    $ git commit --amend
    
    // push patch set $ git push origin HEAD:refs/for/master 

    3.2.3 添加Reviewers

    在Change界面添加相关reviewers.可以考虑使用自动添加reviewers的插件

    3.2.4 提交Change

    Change一般配置成只有在Code-Review +2 以及Verified +1 的情况下才可以Submit。

    Submit时可能会有冲突,界面会提示“Cannot Merge”字样,此时可以先尝试Gerrit页面提供的Rebase功能做一次Rebase操作,如果提示冲突,则需在本地解决冲突后重新提交一个Patch Set到该Change上。

    本地Rebase的一种流程:

    // update the remote tracking branches
    $ git fetch
    
    // fetch and checkout the change
    // (checkout command copied from change screen)
    $ git fetch ssh://your_account@review.xxxxx.com:29418/your_project refs/changes/74/67374/2 && git checkout FETCH_HEAD // do the rebase $ git rebase origin/master // resolve conflicts if needed and stage the conflict resolution ... $ git add <path-of-file-with-conflicts-resolved> // continue the rebase $ git rebase --continue // push the commit with the conflict resolution as new patch set $ git push origin HEAD:refs/for/master 

    3.3 多Feature并行开发

    Code Review需要时间,开发人员可以在此期间开发其他feature,这就产生了多feature并行开发的状态。

    为了保证减少冲突和依赖,每一个feature都应该是在该feature自己的本地分支开发,且此分支是基于远程分支(target branch)的当前HEAD的。 也就是基于远程库的最新代码开发,而不应该依赖于code review中的某个、某些Change。

    当然,如果必要,你也可以基于一个正在code review的Change开发新的feature,这样会产生依赖,可以在Gerrit中该Change的页面看到“Related Changes”。这就要求reviewer也需要关注这个依赖关系,调整review时序。

    根据以往的使用经验,强烈建议不要产生这种依赖,尽量使每一个Change提交都是无依赖的,避免Change的连环失败导致各种解冲突的工作。

    个人Git工作原则二
    ** 尽可能保证每一个Change的完整性以及独立性,且越小越好。**

    4, 进阶功能

    4.1 Web页面代码修改

    Gerrit提供了直接在Web页面修改我们的patch代码的功能,这对于我们做一些小的问题修改(比如格式化问题,命名不对,多余的空格等)非常方便。

     
    Edit

    点击Edit后,该工具栏显示如下:

     
    toolbar

    可以在此对patch的文件进行修改,删除等。
    如果想对文件中的某处进行编辑,点击进入该文件的review界面:

     
    page_edit

    点击编辑按钮,进入编辑模式,编辑完save:

     
    save

    会在Change页面看到,点击Publish Edit按钮,Gerrit会自动帮你生成一个包含刚刚修改的patch。

     
    publish
     
    patch

    4.2 草稿箱功能

    Gerrit可以作为一个自己的Change草稿箱,我们可以将一些还未完成,或者还不想提交review的Change上传至此处。一来可以作为一个备份,另外在多人互相协助完成同一个功能,或是自己在多台电脑(家里、办公室)上处理未完成的工作。
    不同于提交一个正式Change的“refs/for/”协议,提交一个Change到草稿箱的协议方式为“refs/drafts/”,如下:

    $ git commit
    $ git push origin HEAD:refs/drafts/luckyair
    

    在Gerrit页面的Drafts栏:

     
    draft

    草稿箱中的Change也可以很方便的转换为正式的Change,而无需重新用“refs/for/”来提交,点击Publish按钮转换为正式Change,也可以在此删除此草稿。

     


    作者:anly_jun
    链接:https://www.jianshu.com/p/b77fd16894b6
    來源:简书
    简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
    展开全文
  • Gerrit使用方法说明 Gerrit上代码提交的三种状态 代码提交至Gerrit之后,有三种状态,分别是:Open、Merged、Abandoned。 Open 状态的代码需要经过Review,Verify,Submit操作后才会真正入库,即成为Merged状态 ...
  • Gerrit教程

    热门讨论 2011-10-22 23:24:28
    Gerrit教程,Qt_Developer_Network_Wiki__Gerrit_Introduction_.pdf
  • gerrit 代码审查

    千人学习 2020-05-30 10:59:49
    Gerrit是一种免费、开放源代码的代码审查软件、使用web界面,可以相互审阅彼此修改后的程序代码,决定是否能够进行提交代码、退回或者要求开发人员进行返工。同时它也可以做为一个版本控制系统来使用。   该...
  • gerrit使用教程

    2013-10-16 14:51:00
    注:使用时把“user”替换为自己的账号,例如 ueapp: ssh://huang.fei@10.0.64.16:29418/jonet2_0_app_ueapp.git 新的环境下需要先注册git,gerrit: git config --global user.name "wang.yonghui"(名字...
     
    新的环境下需要先注册git,gerrit:
    • git config --global user.name "wang.yonghui"(名字需要修改)
    • git config --global user.email ""(修改邮箱)

    本地运行ssh-keygen 生成密钥之后,将公钥copy到gerrit

    另外为了能向gerrit进行提交,需要安装git-review, ubuntu下运行: apt-get install git-review

    Edit

    第一次提交源码方法(在之前git配置好的基础上):以ueapp举例

    1. clone一个的版本库的develop(每个版本库都已经创建该分支)分支到本地

    git clone ssh://:29418/jonet2_0_app_ueapp.git -b develop
    此时在当前路径下会添加一个jonet2_0_app_ueapp的目录,也就是clone的版本库,也可以在clone时指定目录的名称
    cd jonet2_0_app_ueapp
    git branch -l // 此时会看到 *develop分支

    2. 添加一个new remote

    git remote add gerrit ssh://:29418/jonet2_0_app_ueapp.git

    3. configure your project to know about Gerrit

    git review -s

    4. copy 源码到 jonet2_0_app_ueapp目录

    5. 让git跟踪所有源码(只提交必要的源码及工程文件)

    git add -A
    注:A 表示提交所有的文件,一般只在第一次提交时使用

    6. 本地提交

    git commit -a -m "initial commit all source code"

    7. 提交到gerrit

    git review -v develop

    8. 登陆gerrit,在settings页面设置Watched Projects,然后切换到My 页面,选择 Watched Changes,可以看到提交的changes

    9. 最后需要有summiter权限的人把代码最终提交到gerrit库中,

    注:附件中有当前创建的版本库列表及对应的维护人及reviewer

    参考文档:
    https://www.kernel.org/pub/software/scm/git/docs/user-manual.html
    https://wiki.openstack.org/wiki/GerritWorkflow#Review

    转载于:https://www.cnblogs.com/yunsicai/p/3372252.html

    展开全文
  • gerrit使用

    2020-05-26 11:00:03
    安装git教程可自行百度 安装好了git之后,在开始菜单里打开git bash 如下图所示,说明git安装成功了 STEP1:生成SSH KEY并添加到远程仓库账号中 依次执行以下命令: 1.1 将邮箱替换成你自己的邮箱 $ ssh-keygen -t ...

    前提条件是电脑上安装了git
    安装git教程可自行百度
    安装好了git之后,在开始菜单里打开git bash
    如下图所示,说明git安装成功了
    在这里插入图片描述
    STEP1:生成SSH KEY并添加到远程仓库账号中

    依次执行以下命令:

    1.1 将邮箱替换成你自己的邮箱

    $ ssh-keygen -t rsa -b 4096 -C "wangliyuan@lixiang.com"
    

    1.2

    >Generating public/private rsa key pair.
    

    1.3 提示您“Enter a file in which to save the key(输入要保存密钥的文件)”时,按 Enter 键。 这将接受默认文件位置。

    > Enter a file in which to save the key (/c/Users/you/.ssh/id_rsa):[Press enter]
    

    1.4 在提示时输入安全密码

    > Enter passphrase (empty for no passphrase): [Type a passphrase]
    > Enter same passphrase again: [Type passphrase again]
    

    然后找到保存密钥的文件,用notepad++打开

    在这里插入图片描述
    复制密钥,按步骤将复制的密钥添加到远程仓库

    在这里插入图片描述
    最后点ADD添加即可

    STEP2:clone项目到本地

    先在本地新建一个空目录,然后在该目录下执行以下命令

    git clone http://gerrit.it.chehejia.com:8080/fe/app/fe-autotest
    

    在这里插入图片描述
    这时本地项目就和远程仓库建立了关联,以后就可以提交代码了

    STEP3: 提交代码到本地

    可以先试着在该项目目录下修改或者添加一个.txt文件
    然后依次执行:

    git add 文件名.txt
    
    git commit -m "Issue #IAM-1307"
    

    STEP4:将代码推送到远程仓库
    **非常重要:**首次提交代码需要执行下面两条指令

    切换到项目目录下,将名字换成自己的名字

    scp -p -P 29418 wangliyuan@gerrit.it.chehejia.com:hooks/commit-msg .git/hooks/
    
    git commit --amend
    

    之后就可以向远程仓库推送了:

    git push origin HEAD:refs/for/master
    

    推送成功之后可以查看自己的提交记录,如果有提交记录就说明推送成功了,找两个人code-review一下,代码就合并到master分支了

    在这里插入图片描述

    展开全文
  • gerrit-2.15.3 与Cas集成部署
  • 如果你使用过git,当我们git add --> git commit --> git push 之后,你的代码会被直接提交到repo,也就是代码仓库中,就是图中橘红色箭头指示的那样。 Gerrit流程: ----》程序员写代码 ----》push到gerrit...
  • GerritGerrit工作流程及使用手册

    千次阅读 2020-04-24 17:55:51
    gerrit的流程、权限控制其实对于初次接触的同学们来说,确实有点复杂。我希望这篇文章过后,我们能对gerrit的流程有一个大致的了解。 这篇文章将用一个真实的例子,演示一下gerrit的管理员,普通项目成员是如何协同...
  • 教你如何使用Gerrit

    千次阅读 2017-11-17 20:24:20
    教你如何使用Gerrit
  • Gerrit安装使用指导(一)

    万次阅读 2018-04-16 18:04:42
    Gerrit安装使用指导 简介:本指导主要分三部分组成,一是Gerrit的安装配置,二是本地git对接到Gerrit仓库,三是代码审查说明。 一、依赖组件Gerrit依赖的组件主要有以下四个:1) jdk --Gerrit主要由java实现其...
  • Git、Gerrit、Repo使用三者各自功能gii,版本管理库,在git库中没有中心服务器的概念,真正的分布式。repo,repo就是多个git库的管理工具。如果是多个...
  • Gerrit的安装和使用说明

    千次阅读 2018-06-12 10:35:22
    转:http://www.cnblogs.com/smallcoderhujin/p/3937641.htmlGerrit安装和使用说明搞了几天,资料也查了不少,终于磨出来了。有什么不对的地方,大家及时提出来。。。,开始吧系统Centos6.5 x64内存2G硬盘20G数据库...
  • Git与Gerrit使用说明

    2017-11-10 14:18:52
    代码提交流程为: 开发人员提交代码到gerrit等待入库前检查 -&gt;hudson发现评审请求,触发构建,并将构建结果返回至gerrit进行verify评分 -&gt;hudson验证通过 -&gt;code review -&gt;code review...
  • 在Mac下使用Gerrit总结

    千次阅读 2017-05-24 17:37:59
    在Mac下使用Gerrit总结 一、Gerrit简介 Gerrit 是一种免费、开源的代码审查工具,使用网页交互页面。这个软件的名称来自于荷兰设计师师赫里特·里特费尔德(Gerrit Rietveld),作者为Google公司的Shawn ...
  • 今天就教你用git+gerrit管理自己的代码,这也是大公司的开发模式。先来看效果吧~下面正式开始手把手搭建教学,教程及其简单,1小时内能搭建完成,墙裂推荐搭一个!!!我的环境:服务器:阿里云(自己的虚拟机也是...
  • 配置Java环境从官网下载gerrit当前最新版本为2.14。安装MySQL通过如下命令安装Gerrit:按照提示一步步完成安装。有几个按转配置需要特别注意一下。关于Gerrit的Git仓库的保存地址:这个选项用于配置Gerrit的Git仓库...
  • Gerrit代码Review入门实战

    万次阅读 2016-07-01 18:09:23
    在实践中,给大家推荐一款免费、开放源代码的代码审查软件Gerrit。1. Why Code ReviewCode Review是什么?Code Review最直观的解释即看代码。常规的做法为自己看,有时代码逻辑问题可能自己看不出来,需要找同事一起...
  • gerrit-hooks-例子 Gerrit 钩子示例
  • Cas5.2版本的用户如果想访问gerrit,可以直接访问到,但是得自己设定邮箱信息,然后确认,这种方式类似于注册的这种方式,然而我们可以直接通过操作表的方式,完成gerrit用户和cas用户的关联。 重要的关系表 ...
  • Gerrit 代码审计系统实战 在宝成国际集团华东行政中心主管华东地区网络、...
  • push project to Gerrit from Android studio 【Android Studio 配置提交项目代码到 Gerrit 】 2020-05-18 android studio 3.6.3 ---------------------------install Gerrit---------------------------------- 1、...
  • 该扩展提供了Gerrit服务器的视图。 更新树的各个部分时,它们将显示得更大,更亮。 单击项目将其重置。 默认情况下,视图每分钟自动刷新一次。 该扩展假定Jenkins用于持续集成。 注意:这是为在我的工作场所使用...
  • Gerrit代码审查使用教程

    千次阅读 2018-06-04 13:11:12
    Gerrit官方教程http://gerrit.aokp.co/Documentation/intro-user.html
  • Windows环境下Gerrit环境搭建 Gerrit的搭建在Linux系统下的资料比较多,而在Windows系统上的参考资料相对较少,有些配置也需要一定的技巧才能解决,这些记录说明一下过程。 另外,本次配置的环境也比较特别,运行...
  • gitlab与gerrit

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 809
精华内容 323
关键字:

gerrit使用教程