看日记学git

《看日记学git》之一

本原创文章属于《Linux大棚》博客。

博客地址为http://roclinux.cn

文章作者为roc

希望您能通过捐款的方式支持Linux大棚博客的运行和发展。请见“关于捐款

==

今天是“git第一天”,和我“从零开始”吧!

===

1

我用命令rpm -qa|grep -i git查看一下我的机器是否安装了git:

[rocrocket@wupengchong ~]$ sudo su –
[root@wupengchong ~]# rpm -qa|grep -i git
libcapseo-0.2.0-0.1.20080603gita6ec446.fc9.i386
libcaptury-0.3.0-0.1.20080323gitcca4e3c.fc9.i386
xorg-x11-drv-nouveau-0.0.10-2.20080408git0991281.fc9.i386
xorg-x11-drv-digitaledge-1.1.1-1.fc9.i386

此处grep命令使用-i是表示不区分大小写,这样的话无论是大写小写的git/GIT/GiT…都不会逃过grep的法眼。

结果发现了一些似乎使用git管理的开发项目,还有一些包含git字符的其他包,但就是没发现git包。看来我需要安装一个!

2

如果使用fedora的yum来安装git,应该是相当简单。如果你是ubuntu,那就更简单了,用apt-get就可以。如果是gentoo的话,我想可以用emerge吧。源码安装的话,大家可以参考git官网看看。我当然毫无悬念的选择yum:

[root@wupengchong ~]# yum list|grep ^git
git.i386                                 1.5.5.1-1.fc9          updates-newkey
git-all.i386                             1.5.5.1-1.fc9          updates-newkey
git-arch.i386                            1.5.5.1-1.fc9          updates-newkey
git-cvs.i386                             1.5.5.1-1.fc9          updates-newkey
git-daemon.i386                          1.5.5.1-1.fc9          updates-newkey
git-email.i386                           1.5.5.1-1.fc9          updates-newkey
git-gui.i386                             1.5.5.1-1.fc9          updates-newkey
git-svn.i386                             1.5.5.1-1.fc9          updates-newkey
gitk.i386                                1.5.5.1-1.fc9          updates-newkey
gitweb.i386                              1.5.5.1-1.fc9          updates-newkey

此处的grep命令使用了^符号,表示后面的字符串需要在每行的最开头位置,于是我们得到了如上的一大串git软件包。首先我能肯定的git.i386是必然需要安装的,它一定是git的主包,但诸如all、arch、cvs等等这些包到底是起什么作用呢?我有些迷惑了。于是,不得不求助baidu了。

原来:

git包是git的核心程序,它只包括最小的依赖关系,如果只安装git包的话,那么一些git的外围扩展将无法使用。

git-all包包括了所有的集成在git上的外围扩展功能。安装了这个包,你就万事大吉了!

git-arch包是为了兼容arch仓库的。大家或许听说过linux的发行版本arch,但现在说的arch和这个发行版本似乎没有必然关系。git-arch中的arch是gnu arch,它是一个类似于cvs、sccs、svn的版本控制系统。git-arch包用于支持从gnu arch仓库导入到git仓库。

git-cvs包用于支持从cvs仓库导入到git仓库。

git-daemon包用于支持用户使用git://形式的命令来访问git仓库。

git-email包支持使用git发送邮件。(这个功能用处在哪里呢?我也不太清楚。慢慢研究中… 如果哪位朋友会,在下面留个言)

git-gui包是一个基于Tk的git程序,也就是说是带有GUI的,可以用鼠标点击操作的git。

git-svn包用于支持从svn仓库导入到git仓库。

gitk包是一个带有Tcl/Tk GUI的可以用来浏览git仓库历史信息的桌面程序。(如果你对git仓库这个词没有概念的话,不要急,后面会说到。现在我们的目的就是要把git安装上。)

gitweb包则是一个成熟的基于web的用于git仓库管理的web程序。

3

知道了每一个包的作用后,我们就来安装吧!

[root@wupengchong ~]# yum install git-all.i386

Dependencies Resolved

================================================================================
Package              Arch       Version             Repository           Size
================================================================================
Installing:
git-all              i386       1.5.5.1-1.fc9       updates-newkey       9.0 k
Installing for dependencies:
cvsps                i386       2.1-6.fc9           fedora                55 k
emacs-common         i386       1:22.2-5.fc9        updates-newkey        19 M
emacs-git            i386       1.5.5.1-1.fc9       updates-newkey        53 k
git                  i386       1.5.5.1-1.fc9       updates-newkey       3.5 M
git-arch             i386       1.5.5.1-1.fc9       updates-newkey        28 k
git-cvs              i386       1.5.5.1-1.fc9       updates-newkey        69 k
git-email            i386       1.5.5.1-1.fc9       updates-newkey        28 k
git-gui              i386       1.5.5.1-1.fc9       updates-newkey       177 k
git-svn              i386       1.5.5.1-1.fc9       updates-newkey        71 k
gitk                 i386       1.5.5.1-1.fc9       updates-newkey        79 k
perl-Error           noarch     1:0.17012-2.fc9     fedora                27 k
perl-Git             i386       1.5.5.1-1.fc9       updates-newkey        18 k
perl-TermReadKey     i386       2.30-6.fc9          fedora                33 k
subversion-perl      i386       1.4.6-7             fedora               893 k
tla                  i386       1.3.5-5.fc9         fedora               353 k

Transaction Summary
================================================================================
Install     16 Package(s)
Update       0 Package(s)
Remove       0 Package(s)

Total download size: 24 M
Is this ok [y/N]:

上面列出了要安装的包和依赖,真是不小,24M!点y安装!

今天就到这里。今把git邀请到家了。先让它休息休息,明天继续~

===
如果你对git感兴趣,请继续阅读:

《看日记学git》之二

《看日记学git》之三

《看日记学git》之四

over~

7条评论

  1. hi, could you give me some advice on how to setup & add a additional repository used by YUM, for I find it’s unconvenient to install some kind of packages that are not included in byr’s repository. Thanks!

发表您的评论

请您放心,您的信息会被严格保密。必填项已标识 *