前言
同生活中的许多伟大事件一样,Git 诞生于一个极富纷争大举创新的年代。Linux 内核开源项目有着为数众广的参与者。绝大多数的 Linux 内核维护工作都花在了提交补丁和保存归档的繁琐事务上(1991-2002年间)。到 2002 年,整个项目组开始启用分布式版本控制系统 BitKeeper 来管理和维护代码。官方文档
到了 2005 年,开发 BitKeeper 的商业公司同 Linux 内核开源社区的合作关系结束,他们收回了免费使用 BitKeeper 的权力。这就迫使 Linux 开源社区(特别是 Linux 的缔造者 Linus Torvalds )不得不吸取教训,只有开发一套属于自己的版本控制系统才不至于重蹈覆辙。他们对新的系统制订了若干目标:
- 速度
- 简单的设计
- 对非线性开发模式的强力支持(允许上千个并行开发的分支)
- 完全分布式
- 有能力高效管理类似 Linux 内核一样的超大规模项目(速度和数据量)
安装
git 源码安装。下载源码
1 | # wget https://github.com/git/git/archive/v2.21.0.zip |
解压缩
1 | # tar zxvf v2.21.0.zip |
如果遇到该错误
1 | http.h:6:23: warning: curl/curl.h: No such file or directory |
1 | 执行命令 |
重新执行编译命令
发现编译报错
1 | CC http.o |
执行命令解决这个问题
1 | # yum install -y expat-devel |
再次重新执行编译命令
发现再次报错
1 | GITGUI_VERSION = 0.21.GITGUI |
执行命令解决
1 | # yum install -y tcl build-essential tk gettext |
再次重新执行编译命令
git源码编译成功执行执行命令
1 | # make prefix=/usr/local/git install |
1 | # cd /usr/local/git/ |
安装完成。