2021SC@SUDSC
目录
git工具的使用以及利用git来管理Linux内核项目代码
2005年,Linus Torvalds不满足于当时任何一个可用的开源 版本控制系统,于是就亲手开发了一个全新的版本控制软件git。git 发展到今天,已经成为全世界最流行的代码版本管理软件之一,微软公司的开发工具也支持git。
在学习git之前,一些资料建议了解一下集中式版本控制系统和分布式版本控制系统。
集中式版本控制系统是把版本库几种存放在中央服务器中,当我们需要编辑代码时,需要从中央服务器获取最新的版本,然后进行编写和修改代码。在代码修改测试完之后,需要把修改后的代码推送到中央服务器中。但是如果有很多人协同工作时,每次都需要连接中央服务器,那么这就有可能受到网络带宽的限制、
与集中式版本控制系统相比,分布式管理控制系统没有中央服务器这个概念,每个人的电脑就可以是一个完整的版本库,这样的话,在工作时就不需要联网,那么对网络宽带就没有什么要求,因此,分布式也更适合多人协同工作。工作方式即是当两个人都修改了同一个文件,那么他们各自需要把自己修改的推送给对方,这几样就可以互相看到对方修改的内容了。
使用git开源工作的一般流程:
- 复制项目git仓库到本地工作目录。
- 在本地工作目录里添加或者修改文件。
- 检查补丁格式。
- 提交修改。
- 生成补丁发给评审,等待评审意见。
- 评审发送修改意见,再次修改并提交。
- 直到评审同一该补丁,并将其合并到主干分支上。
一、 安装git
在Ubuntu下使用apt-get工具来安装git。
wxd@ubuntu:~$ sudo apt-get install git
在使用git之前需要配置用户的基本信息,比如用户名和邮箱。
wxd@ubuntu:~$ git config --global user.name "×××"
wxd@ubuntu:~$ git config --global user.email "×××"
可以通过git config [key]的方式来查看配置信息,也可以通过以下方式来查看全部的配置信息。
wxd@ubuntu:~$ git config --list
二、 git的基本操作
1.下载git仓库
我们常说的仓库就是指版本库,简单的来说就是一个目录。这个目录里的所有文件都是由git来管理的,每个文件的修改、删除都可以被git跟踪,并且可以追踪提交的历史和详细信息,还可以还原到历史中某个提交,以便做回归测试,对程序员十分友好。
我们可以使用git clone命令从现有的git仓库中下载代码到本地,这与svn工具的checkout功能有些相似。
我们通过下面命令把Linux官方内核的代码仓库下载到本地。
wxd@ubuntu:~/linux$ git clone git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git
上述命令执行完成之后,会在本地当前目录创建一个名为 linux的目录,其中包含一个.git目录,用来保存该仓库的版本记录。
2.查看git commit
通过git clone下载代码仓库到本地之后,我们可以通过git log命令来查看提交的历史。
wxd@ubuntu:~/linux$ git log
author Arnd Bergmann