centos7.2下编译安装git
Git简介
Git是一个分布式版本控制系统
Git vs SVN
SVN是典型的集中式版本控制起,版本库集中存放在服务器,当我们用自己的电脑干活儿的时候,需要先从中央服务器取得最新的版本,然后开始干活儿,完成之后再把自己修改过的文件推送给中央服务器。中央服务器就好比是一个图书馆,我们要修改一本书,就必须先从图书馆借出来,然后回到家自己改,改完了再放回图书馆。
弊端:
A. 集中式版本控制系统最大的毛病就是必须联网才能工作
B. 中央服务器出问题了的话,所有人都没法儿工作
centos最新的7.2版本,git居然是1.8,而最新的git版本是2.9
差的太多了,何况git2.0后有大更新。于是,我决定编译安装。中间有一点小破折,记录一下,备忘。
1、下载最新的源码,网址:https://www.kernel.org/pub/software/scm/git/
我下载的地址:https://www.kernel.org/pub/software/scm/git/git-2.9.2.tar.gz
2、解压:tar xzvf git-2.9.2.tar.gz
3、进入解压后的git目录后,执行:./configure很顺利。
4、make的时候出错了。提示如下:
In file included from credential-store.c:1:
cache.h:21:18: warning: zlib.h: No such file or directory
In file included from credential-store.c:1:
cache.h:23: error: expected specifier-qualifier-list before ‘z_stream’
make: *** [credential-store.o] Error 1
=============
缺少 zlib的头文件, 开发包没装,
yum install zlib (系统默认已经装上)
yum install zlib-devel
5、make install时,有出现一个错误。提示如下:
Can't locate ExtUtils/MakeMaker.pm in @INC (@INC contains: /usr/local/lib64/perl5
/usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl
/usr/lib64/perl5 /usr/share/perl5 .) at Makefile.PL line 3.
BEGIN failed--compilation aborted at Makefile.PL line 3.
=========================
原来一个perl的模块需要安装:perl-ExtUtils-Embed
yum install perl-ExtUtils-Embed -y
6、经过以上的波折,终于make install成功。但是运行git的时,又提示:
/usr/bin/git 没有哪个文件或目录
=================================
原来git安装到/usr/local/bin/目录内了,而centos默认该目录没有在搜索目录内。
解决办法,建立一个软链接吧。
ln -s /usr/local/bin/git /usr/bin/git
大功告成。
基本常用操作命令:
Linux系统可以通过apt-get(Ubuntu系统)/yum(centos系统)/pacman install git来安装 (我上面是编译安装的)
Mac系统可以通过homebrew install git来安装
windows下可以msysgit或者Babun
安装之后需要进行设置,在命令行中输入:可以先不配置
git config --global user.name "你的名字"
git config --global user.email "邮箱地址"
1. Git常用命令
A. 创建版本库(新建一个文件夹,做测试 )
mkdir liudong
cd liudong
git init (不建议用)
git clone "http://example.com/xxx.git" (建议使用,1、 注册开源中国(码云)2、新建项目 3、直接复制开源中国版本库项目链接就是http://example.com/xxx.git)
cd 进入项目
git pull (将项目拿到本地)
B. 查看当前版本库状态
git status
C. 添加文件
touch xx.txt
git add xx.txt
D. 提交文件
git commit -m "add xx.txt" (提交到本地自己的版本库里)
git push (推送到开源中国(码云)上去)。提示:输入用户:xxxx、密码 :xxxx
E. 查看版本修改纪录
git log
--pretty参数
git reflog
F. 版本回退
git reset --hard HEAD^
git reset --hard "commit id"
2. 工作区和暂存区
3. 撤销修改
git checkout -- xx.txt
4. 添加远程库
git remote add origin https://git.oschina.net/jeepxiaoxiaozi/git_basic.git
参考网址:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000