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