git(学习之二)编译安装

Git学习笔记
#####################################################
qq:1218761836
qq群:150181442
#####################################################

Git安装
1.    Yum安装git
yum install git –y
yum install -y  git-email git-gui gitk git-svn git-cvs    
其中git-svn  git-cvs 是支持svn  cvs协同工作时需要(可选择)
2.    开启git命令补齐功能(不过我测试不加这个也可以补齐)
. /etc/bash_completion.d/git 或者source /etc/bash_completion.d/git  
#运行此命令后即可在服务器上使用git的命令补齐功能。为了能够在终端开启时自动加载bash_completion脚本,需要在系统配置文件/etc/profile及本地配置文件~/.bashrc 中添加下面的内容。
#add  git
if [ -f /etc/bash_completion.d/git ]; then  
. /etc/bash_completion.d/git
fi
当然这里/etc/bash_completion.d/git的git脚本也可以复制源文件替换,
cp /usr/share/doc/git-1.7.1/contrib/completion/git-completion.bash /etc/bash_completion.d/
然后把文件中涉及到的git替换成git-completion.bash即可
参考: http://git-scm.com/download/linux
编译安装
编译安装需要安装一些git需要的库
yum install curl-devel expat-devel gettext-devel  openssl-devel zlib-devel  gcc*  \
perl perl-devel texinfo  xmlto   -y  
为了能够添加更多格式的文档(如 doc,html,info) 需要安装所依赖的包
yum install asciidoc xmlto   -y
docbook2x 这个库需要额外安装
wget http://centos.karan.org/el5/extras/testing/i386/RPMS/docbook2X-0.8.8-1.el5.kb.i386.rpm
rpm -ivh docbook2X-0.8.8-1.el5.kb.i386.rpm –nodeps
cd /usr/bin/
ln -s db2x_docbook2texi docbook2x-texi
ll docbook2x-texi
获取源码包:
https://www.kernel.org/pub/software/scm/git/  
https://github.com/git/git/releases
    通常在 GitHub 上的是最新版本,但 kernel.org 上包含有文件下载签名,如果你想验证下载正确性的话会用到。
wget https://www.kernel.org/pub/software/scm/git/git-2.5.0.tar.gz    
tar xvf git-2.5.0.tar.gz -C /usr/local/src/  
[[email protected] git-2.5.0]# less INSTALL  
                Git installation

Normally you can just do "make" followed by "make install", and that
will install the git programs in your own ~/bin/ directory.  If you want
to do a global install, you can do

$ make prefix=/usr all doc info ;# as yourself
        # make prefix=/usr install install-doc install-html install-info ;# as root

(or prefix=/usr/local, of course).  Just like any program suite
that uses $prefix, the built results have some paths encoded,
which are derived from $prefix, so "make all; make prefix=/usr
install" would not work.

The beginning of the Makefile documents many variables that affect the way
git is built.  You can override them either from the command line, or in a
config.mak file.

Alternatively you can use autoconf generated ./configure script to
set up install paths (via config.mak.autogen), so you can write instead

$ make configure ;# as yourself
        $ ./configure --prefix=/usr ;# as yourself
        $ make all doc ;# as yourself
        # make install install-doc install-html;# as root

…………………………………………………………………………………………………………………………….
[[email protected] git-2.5.0]# make configure
GIT_VERSION = 2.5.0
    GEN configure
[[email protected] git-2.5.0]# ./configure –help # 查看安装的参数

[[email protected] git-2.5.0]# ./configure --prefix=/application/git
[[email protected] git-2.5.0]# make all doc info
[[email protected] git-2.5.0]# make install install-doc install-html install-info
.................................................................................................................................
make[1]: Leaving directory `/usr/local/src/git-2.5.0/Documentation‘
make -C Documentation install-info
make[1]: Entering directory `/usr/local/src/git-2.5.0/Documentation‘
make[2]: Entering directory `/usr/local/src/git-2.5.0‘
make[2]: `GIT-VERSION-FILE‘ is up to date.
make[2]: Leaving directory `/usr/local/src/git-2.5.0‘
install -d -m 755 /application/git/share/info
install -m 644 git.info gitman.info /application/git/share/info
if test -r /application/git/share/info/dir; then \
          install-info --info-dir=/application/git/share/info git.info ;\
          install-info --info-dir=/application/git/share/info gitman.info ;\
        else \
          echo "No directory found in /application/git/share/info" >&2 ; \
        fi
No directory found in /application/git/share/info
make[1]: Leaving directory `/usr/local/src/git-2.5.0/Documentation‘

man git 查看git命令的使用说明

[[email protected] ~]# man git
GIT(1)                            Git Manual                            GIT(1)

NAME
       git - the stupid content tracker

SYNOPSIS
       git [--version] [--exec-path[=GIT_EXEC_PATH]] [--html-path]
           [-p|--paginate|--no-pager] [--no-replace-objects]
           [--bare] [--git-dir=GIT_DIR] [--work-tree=GIT_WORK_TREE]
           [--help] COMMAND [ARGS]

DESCRIPTION
       Git is a fast, scalable, distributed revision control system with an unusually rich command set that provides both
       high-level operations and full access to internals.

See gittutorial(7) to get started, then see Everyday Git[1] for a useful minimum set of commands, and "man
       git-commandname" for documentation of each command. CVS users may also want to read gitcvs-migration(7). See the Git
       User’s Manual[2] for a more in-depth introduction.

The COMMAND is either a name of a Git command (see below) or an alias as defined in the configuration file (see git-
       config(1)).

Formatted and hyperlinked version of the latest git documentation can be viewed at
       http://www.kernel.org/pub/software/scm/git/docs/.   #man   git的在线说明文档

......................................................................................................................................................................

备注:编译的时候可能会遇到错误,如果遇到以下故障

make的时候出错大都和依赖包有问题,如果安装的了相应的依赖包,编译起来很方便

错误一
/bin/sh: line 1: xmlto: command not found
make[1]: *** [git-add.1] Error 127
make[1]: Leaving directory `/usr/local/src/git-1.7.12.3/Documentation‘
make: *** [install-doc] Error 2

依赖包的问题
yum install -y xmlto

错误二
/bin/sh: line 1: docbook2x-texi: command not found
make[1]: *** [user-manual.texi] Error 127
make[1]: Leaving directory `/usr/local/src/git-1.7.12.3/Documentation‘
make: *** [install-info] Error 2

git完整安装需要asciidoc,docbook2X
yum install -y openjade  texinfo  perl-XML-SAX
cd /usr/local/src
wget http://centos.karan.org/el5/extras/testing/i386/RPMS/docbook2X-0.8.8-1.el5.kb.i386.rpm
rpm -ivh docbook2X-0.8.8-1.el5.kb.i386.rpm --nodeps
cd /usr/bin
ln -s db2x_docbook2texi docbook2x-texi

时间: 2024-10-13 00:30:14

git(学习之二)编译安装的相关文章

Git 学习笔记<简介与安装> (一)

Git,开源中国以及GitHub所使用的系统, Is A 一个分布式版本控制系统 Be Used to 为团队合作写代码提供方便的管理系统.几乎满足你所有关于合作写代码的幻想. Has 本地端:工作区.版本库 (版本库还含有一个暂存区) 远程仓库:版本库(用来储存版本库的服务器) How To Install Linux: 首先,先输入git,看看是否安装Git: $ gitThe program 'git' is currently not installed. You can install

GIT学习(二)_使用GIT

前面已经安装并测试成功安装了GIT工具,接下来就是具体的使用了. 一.设置开发者个人信息 在任何一个系统之中都会存在有多个开发者(多人协作开发),而在GIT之中,对于每一个开发者(单机),都需要开发者自己定义自己的名字和email邮件地址,以便进行联系. 设置全局信息 GIT是分布式版本控制系统,每个单机都有自己的基本信息:开发者名字,email地址等. 姓名:git config --global user.name"shmily" email:git config --global

【版本控制】git学习笔记(二)

关于git的基本使用请阅读上篇博文内容,[版本控制]git学习笔记(一). 1.远程仓库 Git是分布式版本控制系统,同一个Git仓库,可以分布到不同的机器上.怎么分布呢?最早,肯定只有一台机器有一个原始版本库,此后,别的机器可以"克隆"这个原始版本库,而且每台机器的版本库其实都是一样的,并没有主次之分. 你肯定会想,至少需要两台机器才能玩远程库不是?但是我只有一台电脑,怎么玩? 其实一台电脑上也是可以克隆多个版本库的,只要不在同一个目录下.不过,现实生活中是不会有人这么傻的在一台电脑

马哥学习笔记六——编译安装LAMP只httpd

1.解决依赖关系 httpd-2.4.4需要较新版本的apr和apr-util,因此需要事先对其进行升级.升级方式有两种,一种是通过源代码编译安装,一种是直接升级rpm包.这里选择使用编译源代码的方式进行. (1) 编译安装apr # tar xf apr-1.4.6.tar.bz2 # cd apr-1.4.6 # ./configure --prefix=/usr/local/apr # make && make install (2) 编译安装apr-util # tar xf ap

ROS 学习系列 -- 树莓派编译安装完整版本ROS

树莓派安装完整的ROS并不容易,博主东方赤龙花费了数天总结了安装编译的经验,否则很容易走弯路. ROS官方论坛里面有安装教程, 但是很容易出错.尤其是Desktop版的ROS! 1. 安装环 树莓派B+,  ROS Indigo, 16G TF卡,Raspbian OS 2. 安装装备 2.1 准备ROS代码仓库 sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu wheezy main" > /etc/apt/sou

LAMP部署-- 二.编译安装Mysql

LAMP组件介绍 LAMP是指Linux.Apache,Mysql以及PHP的简称,目前许多生产环境的都是用的LAMP架构,在网络应用和开发环境方面,LAMP组合是非常棒的,它们的结合提供了强大的功能. Linux作为底层的操作系统,提供了灵活且安全的应用平台,为其他的组件稳定运行提供了保障: Apache作为web服务器,提供了功能强大.稳定与支撑能力突出的web平台: Mysql也是一款优秀的数据库软件: PHP是一种开发脚本语言,可以嵌入HTML中,适用于web开发: 准备工作 操作系统:

Git学习(二):Git的初步使用

一.Git的最小配置 1.使用如下命令创建Git的用户名和邮箱,如下所示: $git config --global user.name 'your_name' $git config --global user.email 'your_email' 使用如下命令清除创建的用户名和邮箱,如下所示: $git config --unset --global user.name $git config --unset --global user.email 2.在global的位置处,分为有三种参数

Git学习(二)

远程仓库 Git是分布式版本控制系统,同一个Git仓库可以分布到不同的机器上. 最早只有一台机器上有一个原始版本,此后,别的机器可以"克隆"这个原始版本库,而且每台机器病没有主次之分,其实一台机器只要不在同一个目录下,也是可以克隆多个版本库的,但没什么意义. GitHub 充当服务器,其他每个人都从这个"服务器"仓库克隆一份到自己的电脑上,并且各自把各自的提交推送到服务器仓库,也从服务器仓库拉取别人的提交. 你的本地仓库Git和GitHub仓库之间的传输是通过SSH

Snmp学习总结(二)——WinXP安装和配置SNMP

一.安装SNMP 今天讲解一下在XP下安装SNMP协议,安装步骤如下: 到此,XP系统下安装SNMP的工作就算是全部完成了. 二.配置SNMP 安装好SNMP协议之后,还需要进行"团体名称"的配置,配置步骤如下: 找到SNMP的服务,如下图所示: 点击[添加]按钮添加一个团体名称并设置访问权限,例如:public,访问权限是可读写,另外还需要指明可以接收来自哪些主机发送的SNMP数据包,可以使用具体的IP地址指明,这里为了方便演示,就使用"接受来自任何主机的SNMP数据包&q