Centos7 yum安装git服务器
<p>安装git</p><blockquote>
<p>yum install git</p>
</blockquote>
<p>检查git版本</p>
<blockquote>
<p>git –version</p>
</blockquote>
<p>发现不是较新的版本或者是我们想要的版本</p>
<p>移除该版本git</p>
<blockquote>
<p>yum remove git</p>
</blockquote>
<p>下载编译工具</p>
<blockquote>
<p>yum -y groupinstall Development Tools</p>
</blockquote>
<p>下载依赖包</p>
<blockquote>
<p>yum -y install zlib-devel perl-ExtUtils-MakeMaker asciidoc xmlto openssl-devel</p>
</blockquote>
<p>下载 Git 最新版本的源代码</p>
<blockquote>
<p>wget https://www.kernel.org/pub/software/scm/git/git-2.32.0.tar.gz</p>
</blockquote>
<p>登录https://github.com/git/git/releases查看git的最新版。不要下载带有-rc的,因为它代表了一个候选发布版本。</p>
<p><a href="https://github.com/git/git/archive/refs/tags/v2.32.0.tar.gz">https://github.com/git/git/archive/refs/tags/v2.32.0.tar.gz</a></p>
<p>解压</p>
<blockquote>
<p>tar -zxvf git-2.9.5.tar.gz</p>
</blockquote>
<p>进入目录配置</p>
<blockquote>
<p>cd git-2.32.0<br />
./configure –prefix=/usr/local/git</p>
</blockquote>
<p>安装</p>
<blockquote>
<p>make && make install</p>
</blockquote>
<p>配置全局路径</p>
<blockquote>
<p>export PATH="/usr/local/git/bin:$PATH"<br />
source /etc/profile</p>
</blockquote>
<p>以上即为安装的全部步骤。</p>
<p>后续使用中,遇到错误</p>
<p>Unable to find remote helper for ‘https’<br />
解决方法:<br />
将 /usr/libexec/git-core 纳入 PATH,至少在使用 git 之前,设置一下PATH</p>
<p>PATH=$PATH:/usr/libexec/git-core</p>
<p>或直接在 /etc/profile 中修改。</p>
<p>配置环境变量的备用方案:</p>
<blockquote>
<p># echo "export PATH=$PATH:/usr/local/git/bin" > /etc/profile.d/git.sh<br />
# source /etc/profile.d/git.sh<br />
# git --version</p>
</blockquote>
<h3>下面是补充</h3>
<p>使用SSH搭建GIT服务器,要做以下准备工作:<br />
1、在服务器和客户端机器上分别安装git<br />
2、在服务器上安装ssh服务<br />
3、在客户端机器上安装SSH客户端</p>
<p>make clean 清除编译<br />
yum remove git 卸载</p>
<p><strong>安装服务端:</strong></p>
<p>(1)首先先更新系统</p>
<blockquote>
<p>sudo yum update</p>
</blockquote>
<p>(2)安装依赖的包</p>
<blockquote>
<p>sudo yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker</p>
</blockquote>
<p>(3)下载git源码并解压缩</p>
<blockquote>
<p>wget https://Github.com/Git/Git/archive/v2.32.0.tar.gz<br />
tar zxvf v2.32.0.tar.gz<br />
cd git-2.32.0<br />
make prefix=/usr/local/git all</p>
</blockquote>
<p>如果出现错误:</p>
<p>libgit.a(utf8.o): In function reencode_string_iconv': /root/git-2.3.0/utf8.c:463: undefined reference tolibiconv’ libgit.a(utf8.o): In function reencode_string_len': /root/git-2.3.0/utf8.c:502: undefined reference tolibiconv_open’ /root/git-2.32.0/ut<br />
make prefix=/usr/local/git install</p>
<p><strong>安装libiconv</strong></p>
<p>下载编译</p>
<blockquote>
<p>cd /usr/local<br />
wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz<br />
tar -zxvf libiconv-1.14.tar.gz<br />
cd libiconv-1.14<br />
./configure –prefix=/usr/local/libiconv && make && make install</p>
</blockquote>
<p>创建一个软链接到/usr/lib</p>
<blockquote>
<p>ln -s /usr/local/lib/libiconv.so /usr/lib<br />
ln -s /usr/local/lib/libiconv.so.2 /usr/lib</p>
</blockquote>
<p>然后回到git目录继续编译</p>
<blockquote>
<p>make prefix=/usr/local/git all<br />
make prefix=/usr/local/git install</p>
</blockquote>
<p>**(5)此时你如果使用git --version 查看git版本的话,发现git仍然是1.8.1版本。这是因为它默认使用了"/usr/bin"下的git。**<br />
你可以用下面的命令查看git所在的路径:</p>
<blockquote>
<p>$ whereis git<br />
git: /usr/bin/git /usr/local/git /usr/share/man/man1/git.1.gz</p>
</blockquote>
<p>**(6)我们要把编译安装的git路径放到环境变量里,让它替换"/usr/bin"下的git。为此我们可以修改“/etc/profile”文件(或者/etc/bashrc文件)。**</p>
<blockquote>
<p>sudo vim /etc/profile</p>
</blockquote>
<p>然后在文件的最后一行,添加下面的内容,然后保存退出。</p>
<blockquote>
<p>export PATH=/usr/local/git/bin:$PATH</p>
</blockquote>
<p>**(8)然后再次使用git --version 查看git版本,发现输出2.3.0,表明安装成功。**</p>
<p>**安装gitosis:**</p>
<p>下载setuptools放到你想放的目录,我自己放在/usr/local/src这里</p>
<blockquote>
<p>wget https://pypi.python.org/packages/source/s/setuptools/setuptools-19.0.tar.gz#md5=b921200449c8b52d62c7e70a47956b69 (https://pypi.python.org/pypi/setuptools#downloads)这个网址下载的,可以去下载最新<br />
tar zxvf setuptools-19.0.tar.gz<br />
cd setuptools-19.0<br />
python setup.py install<br />
cd /usr/local<br />
git clone git://github.com/res0nat0r/gitosis.git<br />
cd gitosis</p>
</blockquote>
<p>**python setup.py install 显示Finished processing dependencies for gitosis==0.2即表示成功**</p>
<p>**在Linux服务器上**<br />
**第一步,先创建一个专门由于git仓库的一个账号吧,这样也方便进行管理 (如果已经有账号则不需要执行这步)**</p>
<blockquote>
<p>sudo groupadd git #新建一个git用户组<br />
sudo useradd git -m -s /sbin/nologin -d /home/git -g git #新建一个git用户,创建目录,并禁止shell登录,添加到git用户组<br />
sudo useradd git -m -s /bin/bash -d /home/git -g git #新建一个git用户,创建目录,并允许shell登录,添加到git用户组</p>
</blockquote>
<p>**第二步:新建一个git空仓库。**</p>
<p>切换到你用来管理git的账号,本人是git账号:su git 或者你用root</p>
<blockquote>
<p>cd /home/git/<br />
mkdir www.laogao.com 项目文件夹,名字自定义<br />
cd www.laogao.com<br />
git init –bare</p>
</blockquote>
<p>显示:Initialized empty Git repository in /home/git/www.laogao.com.git/ 表示已经建立成功</p>
<p>**第三步:添加用户的公钥**<br />
1.切换到你操作git的用户,列如(su git)</p>
<blockquote>
<p>mkdir /home/git/.ssh<br />
chmod 700 .ssh<br />
cd /home/git/.ssh<br />
ssh-keygen -t rsa //默认会生成~/.ssh/id_rsa.pub公钥文件。<br />
gitosis-init < /home/git/.ssh/id_rsa.pub //初始化</p>
</blockquote>
<p>**初始化完出现3个文件**<br />
**authorized_keys**<br />
**id_rsa**<br />
**id_rsa.pub**</p>
<p>最后:</p>
<p>chmod 600 authorized_keys<br />
vim authorized_keys<br />
“`</p>
<p>把你客户端生成的公钥复制进去就OK了<br />
完成<br />
</p>
頁:
[1]