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

centos7.2下编译安装&&使用-git代码库的更多相关文章

  1. centos7.2下编译安装git

    centos最新的7.2版本,git居然是1.8,而最新的git版本是2.9 差的太多了,何况git2.0后有大更新.于是,我决定编译安装.中间有一点小破折,记录一下,备忘. 1,下载最新的源码,网址 ...

  2. centos7.6下编译安装zabbix4.0.10长期支持版

    一.安装数据库,这里使用的是percona-server5..24版本 配置如下 [root@zabbix4_clone:~]# cat /etc/my.cnf # Example MySQL con ...

  3. ubuntu12.04下编译安装x86平台qt库qt-everywhere-opensource-src-4.8.5

    本文记录PC(x86)下安装Linux/X11版Qt 开发环境.下载页面:http://qt-project.org/downloads ARM嵌入式版本qt库的编译安装详见<unbunt12. ...

  4. centos7.2下编译安装apache2.4

    1.安装编译工具 [root@carl httpd-2.4.25]# yum groupinstall 'Development Tools' 'Server Platform Development ...

  5. Centos7.2下编译安装python3.7

    1.安装python3.7所需要的依赖. yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel rea ...

  6. centos7.6环境下编译安装tengine-2.2.2的编译安装

    centos7.6环境下编译安装tengine-2.2.2的编译安装 .获取tengine2..2的源码包 http://tengine.taobao.org/download/tengine-2.2 ...

  7. CentOS7下编译安装redis-5.0.9

    CentOS7下编译安装redis-5.0.9 本文地址http://yangjianyong.cn/?p=171转载无需经过作者本人授权 下载redis #code start wget https ...

  8. centos7下编译安装php-7.0.15(PHP-FPM)

    centos7下编译安装php-7.0.15(PHP-FPM) 一.下载php7源码包 http://php.net/downloads.php 如:php-7.0.15.tar.gz 二.安装所需依 ...

  9. 不要着急改代码,先想想--centos 6.8下编译安装tmux

    诸位读者新年好,2017开年第一篇博客,请允许我先问候一下看到这篇博客的诸位.写博客是我2017年定下的目标之一,希望我会坚持下去. 最近打算尝试一下tmux这个神器,于是有了这一篇关于思维方式的Bl ...

随机推荐

  1. Atom插件推荐

    1.File Icons 为各种不同的文件显示icon 2.git plus 添加git的功能 3.atom-beauty 代码格式化工具 4.eclipse keybindings 在atom上使用 ...

  2. 红黑树(Red-Black tree)

    红黑树又称红-黑二叉树,它首先是一颗二叉树,它具体二叉树所有的特性.同时红黑树更是一颗自平衡的排序二叉树.我们知道一颗基本的二叉树他们都需要满足一个基本性质–即树中的任何节点的值大于它的左子节点,且小 ...

  3. ssh 服务器之间公钥认证方式的配置

    前言 项目中需要编写脚本在服务器之间上传或者下载文件,但没有相关服务器来测试脚本,于是就着手安装两台server,然后用ssh的相关命令去配置server之间公钥认证登录. 步骤 1. 在VM Box ...

  4. Error:The network adaptor could not establish the connection问题的解决办法

     最近在学习hibernate 5.0.4, 自然而然就需要使用数据库,由于本人工作中一直使用Oracle,于是在自己的电脑上安装了Oracle 12.1.0, 安装完成使用一直没有问题,突然有一天使 ...

  5. 获取Finacial dimension value的description 值

    public static Description findDimensionValueDescription(DimensionValue _dimensionValue, Name _dimens ...

  6. TCP/IP详解 (转)

    TCP/IP详解学习笔记(1)-基本概念 为什么会有TCP/IP协议 在世界上各地,各种各样的电脑运行着各自不同的操作系统为大家服务,这些电脑在表达同一种信息的时候所使用的方法是千差万别.就好像圣经中 ...

  7. Git Pro - (2)分支

    Git 保存的不是文件差异或者变化量,而只是一系列文件快照. 在 Git中提交时,会保存一个提交(commit)对象,它包含一个指向暂存内容快照的指针,作者和相关附属信息,以及一定数量(也可能没有)指 ...

  8. thinkphp3.2!Go for it!

    http://document.thinkphp.cn/manual_3_2.html

  9. Java集合类简单总结(重学)

    java集合类简介(重学) 一.Collection(集合).Map接口两者应该是平行关系吧. 1.Map介绍 Map是以键值(key-value)对来存放的,2个值.通过key来找到value(例: ...

  10. java.lang.ClassNotFoundException: org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

    报这个错是因为加的struts的jar包有问题... 另外,jar包应该放在WEB-INF下的lib文件夹里面,且不必Add to build path,该目录下的jar包会自动引入 使用struts ...