别的版本控制迅雷9有没有小工具gerrit这样的检查工具

4477人阅读
在软件项目中,代码管理是一件相当重要的事情。想象一下Google做Andoird系统没有一个强有力的代码管理系统会是怎么样:那肯定是一团糟。那Google是如何管理整个Android系统的代码的呢?Google的工程师们在仔细分析研究过后,选择了GIT作为代码管理的工具,并以GIT为基础,在此之上开发了REPO和GERRIT。使用这三个工具,总加上恰当的流程,Android的代码便被管理的井井有条。
如果要在这样一个代码管理的环境中来提交一个代码改动,大概流程这样:
repo init xxx初始化
repo sync xxx同步要改动的项目
在该项目下面repo start xxx新建一个本地分支
做好改动以后git commit本地提交改动
repo upload xxx将改动上传,等别人通过gerrit review
review如果有需要改动的地方,那本地改好后,git commit --amend来保存新的修改
repo upload 将新的改动上传
重复5-7步,直到review通过,然后merge改动,完毕
(更多信息请参考:/source/developing.html)
下面简单介绍一下这三个工具,它们三个都是免费且开源的工具。
它是一个相当优秀的分布式代码管理工具,目前为止,已经有很多优秀的项目是通过它来管理的。它并不是个看起来华丽的工具,但它很有内涵丰富。它有很多优点,诸如超强非线性开发支持,分布式仓库,仓库易发布,有效管理大型项目,垃圾回收,等等等等,有兴趣的请具体参考:。我只想说说我的感受:
速度快:代码仓库全在本地,各种操作都相当的效率。非常灵活:你可以随心所欲的改代码,而且可以很容易的保存任何阶段你想要保存的成果。分支方便:写代码的时候,你经常需要做各种尝试,临时分支可以给你最大的支持。GITK:非常方便的查询当前分支的历史树。好用:熟悉各种GIT命令以后,你可以随心所欲的操纵代码。
当然,它也并不是完美的:
学习成本略高。要想用好GIT,首先要学会以GIT的方式思考,然后还要熟悉其命令行操作。一个代码仓库不适合管理多个项目。
GIT的官方网站:
GIT的网页参考:
repo是一个基于GIT的工具,它的主要目的是为了管理多个代码仓库,也就是多个GIT。然后它里面还加入了一些其他的方便开发的功能,比如帮助上传代码到Rerrit上面Review。它本身是用Python写出来的一个小工具。
要完全搞清楚repo的工作流程并不是一件很容易的事情,因为对于绝大多数软件工程师来说,都很少会遇到像管理Android整个系统如此庞大的软件项目。我们假设Office(Word,PPT,Excel)的开发是由这套代码管理工具来进行管理的(当然微软肯定有自己的代码管理工具的)。那么情况就是这样的:
Word,PPT,Excel都是单独的一个GIT,而我们用一个XML文件来记录这三个GIT仓库的情况,然后我们再用一个GIT把这个XML文件的版本管理起来,然后repo就会基于这个XML文件来管理这三个GIT。
那么我们需要发布Office1(Word1,PPT1,Excel1)的时候,我们就创建一个repo分支,实际上就是创建一个XML的分支出来,那么这个分支里面的XML就指定了这三个子项目各自的版本信息。当我们需要发布Office2的时候,我们又可以创建另一个分支。这样,整个Office项目就被有效的管理起来了。而每个子项目也有本身充足的灵活性。
当然,想要靠这么一个简单的例子就想弄明白repo的工作原理还是比较困难的,但先留个印象,以后回过头来看说不定就清楚了。
repo这个工具的代码是托管在Google code上面的:
这个是个基于网页的代码review工具,也是基于GIT的一个工具。GIT本身是个分布式的版本控制工具,Gerrit作为一个强大的review工具的同时,也加强了GIT集中化管理代码的能力,与GIT的配合可以说恰到好处。由于这个是个网页工具,用用就知道怎么回事了,注意他是基于GIT的,其他就没什么太多好说的。
Gerrit目前是托管在Google code上面的:
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:70924次
排名:千里之外
原创:24篇
评论:20条
(1)(1)(2)(2)(4)(2)(4)(3)(2)(1)(4)(1)基于10多年的服务器运维经验提供7×24小时监视、服务器代维护、aws主机代维护、亚马逊主机迁移、阿里云vps代维护、阿里云代维护、网站代维护、网站安全加固、故障响应、电话告警、云服务器维护及代维护等托管服务。
三毛:台湾著名作家,日出生于重庆,浙江省定海县人。本名为陈懋平,1946年改名陈平,笔名“三毛”。
Amazon ELB是一个系统及网站的关口,即客户的访问(进口)及系统的相应结果(出口)都要经过ELB。使用Amazon ELB可提高系统的系统的可用性及维护性!
Categories
Select Category
媒体&&(29)
&&&历史&&(9)
&&&娱乐&&(3)
&&&摄影&&(3)
&&&视频&&(14)
新闻&&(80)
&&&体育&&(3)
&&&国际&&(8)
&&&教育&&(2)
&&&社会观察&&(21)
&&&科学&&(2)
&&&科技资讯&&(32)
&&&财经&&(12)
&&&健康&&(5)
&&&奇闻趣事&&(2)
&&&文化&&(2)
编程&&(109)
&&&Linux系统&&(28)
&&&Mac系统&&(15)
&&&Misc&&(5)
&&&Web前端&&(18)
&&&&&&css&&(2)
&&&&&&javascript&&(2)
&&&亚马逊云服务AWS&&(1)
&&&开源&&(21)
&&&&&&php&&(2)
&&&&&&python&&(16)
&&&服务器&&(3)
&&&移动开发&&(16)
记录&&(15)
&&&感悟&&(8)
&&&旅游&&(3)
&&&随笔&&(4)
Gerrit 是一个基于 Web 的代码评审和项目管理的工具,面向基于 Git 版本控制系统的项目.
banana% git clone git://android.git.kernel.org/tools/gwtexpui.git
banana% git clone git://android.git.kernel.org/tools/gerrit.git
banana% (cd gwtexpui && mvn install)
banana% cd gerrit && mvn clean package
banana% java -jar gerrit-war/target/ init -d /srv/gerrit
*** Gerrit Code Review v2.0.24.2-72-g4c37167
Initialize '/srv/gerrit' [y/n]? y
*** Git Repositories
Location of Git repositories
*** SQL Database
Database server type
*** User Authentication
Authentication method
[OPENID/?]:
*** Email Delivery
SMTP server hostname
[localhost]:
SMTP server port
[(default)]:
SMTP encryption
SMTP username
*** SSH Daemon
Gerrit SSH listens on address
Gerrit SSH listens on port
Gerrit Code Review is not shipped with Bouncy Castle Crypto v144
If available, Gerrit can take advantage of features
in the library, but will also function without it.
Download and install it now [y/n]? y
Downloading http://www.bouncycastle.org/download/bcprov-jdk16-144.jar ... OK
Checksum bcprov-jdk16-144.jar OK
Generating SSH host key ... rsa... dsa... done
*** HTTP Daemon
Behind reverse HTTP proxy (e.g. Apache mod_proxy) [y/n]? n
Use https:// (SSL)
Gerrit HTTP listens on address [*]:
Gerrit HTTP listens on port
Initialized /srv/gerrit
添加公钥后, 最好在$User.Home/.ssh中创建文件config, 里面输入以下内容:
Host $shortname
User $username
Port 29418
Hostname $gerrit.host
IdentityFile $path/to/private/key$
这个文件是可选的, 只是为了方便执行ssh命令.
banana% git checkout master
banana% git remote add gerritrhost ssh://gerrithost/py-yajl.git
banana% git push gerrithost master
修改和提交
banana% git checkout -b topic-branch
banana% &work&
banana% git commit
banana% git push gerrithost HEAD:refs/for/master
审查通过后,提交自己的代码到远端的master上:
banana% git checkout master
banana% git merge topic-branch
banana% git push origin master
banana% git push gerrithost master
Gerrit可以将集中维护patch的功能和工作量,分散的各个提交者身上来完成;以及可以将你自己patch内容的更改可以实时地反应到gerrit web界面上。
我感觉这是它的最大的好处和优点。
Related Posts:
卡卡&&says:
没用过,不过有时间的话,可以尝试一下
Leave a reply
亚马逊云服务
Designed byCentOS下搭建Git,Gerrit Jenkins版本控制系统_中华文本库
第1页/共27页
CentOS下搭建Git版本
控制系统总结
(编号: ***************)
二零一二年五月
------------------------------------------------------------------------
对本文件资料享受著作权及其它专属权利,未经书面许可,不得将该等文件资料(其全部或
任何部分)披露予任何第三方,或进行修改后使用。
第1页/共27页
寻找更多 ""

我要回帖

更多关于 有没有股骨头检查医院 的文章

 

随机推荐