Git使用心得

本文介绍Git作为分布式版本控制系统的特性和使用方法,对比ClearCase等传统版本控制系统,讲解Git的安装配置、用户鉴权及常见命令操作,并探讨了Git与ClearCase在版本管理上的不同之处。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Git是分布式版本控制的代表,另外一个我知道的是Mercurial,他们都区别于传统的集中式版本控制,如ClearCase,SVN。

首先介绍一下是学习资料,中文书里面好像只有《版本控制之道——使用Git》,其他的现在还在翻译中,不过我们可以查到一些英文资料。比如《Git Pro》。另外一本是动物系列的《Git》

pvc_git images1 images   

接下来是Git Server。《Progmatic》里面只介绍了Gitosis,但好像软件已经很久没有更新,所以其而代之的是Gitolite。不过另外还有Gitorious和Gerrit。我用的是Gitolite。搭建起来比较容易,Ubuntu上也就一袋烟的功夫就安装好了,其他Linux好像用Perl的安装方式装,看别人装也挺简单的。另外一个工作就是添加用户,对于Server来说,一般添加一个git用户,所有软件开发人员的鉴权是靠SSH协议保证的,每个开发者需要提交自己的SSH公钥,靠管理员上传到Gitolite上面gitolite-admin路径下。另外需要在配置文件里添加repository信息。

images2之后就可使用Git了,Windows上可以选择MSys版的Git,或者TortoiseGit。一般提倡先设置自己的用户名和邮箱,这样方便区分是谁提交的代码。由于是分布式版本控制,很多时候是在自己本地修改,需要提交的时候用git push,下载代码用git clone,同步用git pull。当在本地修改时,经常使用的是git add, git commit, git checkout git branch等。

images3由于可以在本地方便地建立分支,合并操作就变得繁琐起来。总的说来有4中合并方式,一种是rebase,还有另外3中merge。rebase会尽可能多的保存修改过的节点。而merge基本上比较简单和野蛮,只要一个最后结果就可以了。在使用rebase的时候,会经常手工输入git rebase --continue这个命令,每次相当于一次版本的修订。另外merge的时候可以使用可视化的工具提高工作效率,例如kdiff3等。

对于用惯了Clear Case的人来说,Git这样的版本控制每个节点可能包括了一批文件的修改和提交,而Clear Case里面的版本树都是针对文件的。我就看惯了Clear Case,再看Git的版本树有些思维难以改过来。

images4    images5

最后,Git能在本地进行版本控制,是一个功能强大的工具,但同时对开发者的要求也比较高,尤其是想充分利用Git的特性提高工作效率。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值