git版本控制教程(带你搭建私有git服务器进行版本控制)
分别在服务器和本地安装最新版本的git
1、服务器上源码安装最新版git
通常centos上使用yum源安装的git版本过低
检查系统上是否已经安装git,若已有则卸载
安装依赖包,下载最新版本git源码
# yum install -y curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel # wget https://github.com/git/git/archive/v2.13.2.tar.gz # tar zxf v2.13.2.tar.gz
安装git,配置环境变量
查看git版本号,正确显示则安装成功
# git --version git version 2.13.2
若编译时报错如下
可以按照如下方式解决
// 对之前git的make 操作进行 make clean # make clean # wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz # tar zxf libiconv-1.14.tar.gz # cd libiconv-1.14 # ./configure --prefix=/usr/local/libiconv # make && make install // 创建一个软链接到/usr/lib # ln -s /usr/local/lib/libiconv.so /usr/lib # ln -s /usr/local/lib/libiconv.so.2 /usr/lib
然后
# make configure # ./configure --prefix=/usr/local/git --with-iconv=/usr/local/libiconv/ # make && make install # echo "export PATH=$PATH:/usr/local/git/bin" >> /etc/bashrc # source /etc/bashrc
配置git 用户名及邮箱
# git config --global user.name 'your name' # git config --global user.email 'your email address'
2、本地安装最新版git(此处演示为Windows上安装)
- windows上安装直接下载最新版安装包,双击->下一步… 即可完成安装
- 所有选项默认即可
- 打开 git-bash,配置git 用户名和邮箱,同服务端配置第6步
1、添加一个git用户,为安全起见禁用shell登录
# useradd git // 为安全起见,禁用 git 用户的 shell 登录 # vim /etc/passwd // 修改 git 用户的 shell 为 git-shell,路径使用 which git-shell 查看 // 找到如下一行 git:x:1001:1001::/home/git:/bin/bash // 修改成如下 git:x:1001:1001::/home/git:/usr/local/git/bin/git-shell
2、初始化一个项目目录为一个仓库
// 进入到项目目录 # git init
3、将该目录克隆成为裸仓库(作为中介)并设置裸仓库所有者为git用户
// 创建一个裸仓库 # git clone --bare ProjectPath /srv/myProject.git
4、将裸仓库添加为远程仓库
// 进入到项目目录 # git remote add origin /srv/myProject.git // 修改远程仓库所属主和所属组 # chown -R git.git /srv/myProject.git
5、将服务器上的项目添加到远程仓库即 /srv/myProject.git
# git add . # git commit -m 'comment' # git push origin master
6、在该用户的家目录下面保存本地用户的公钥
# su git $ cd ~ $ make .ssh $ chmod 700 .ssh $ cd .ssh $ touch authorized_keys $ chmod 600 authorized_keys // 然后在 authorized_keys 文件中加入本地用户的公钥 id_rsa.pub
7、打开git服务器的RSA认证
# vim /etc/ssh/sshd_config // 找到下面3行并去掉注释 1. RSAAuthentication yes 2. PubkeyAuthentication yes 3. AuthorizedKeysFile .ssh/authorized_keys
三、本地设置(Windows端)1、生成公钥并交给服务端
// 打开 git-bash,生成公钥 $ ssh-keygen -t rsa // 在用户目录下的.ssh目录里面会生成 id_rsa, id_rsa.pub // 将 id_rsa.pub 里的内容拷贝到服务器上
2、在保存公钥的同级目录下面新建config文件指定ssh端口(可选)
==类似使用搬瓦工VPS的可能默认ssh端口不是22的需要配置这个==
Host your domain name or server ip User 服务端添加的git用户名 Hostname your domain name or server ip Port ssh 端口 IdentityFile ~/.ssh/id_rsa
3、从服务器克隆项目到本地
$ git clone yrscgit@yrsc0597.com:/srv/yrsc.git
4、添加远程仓库
四、测试- 本地更改,添加,删除项目,然后推送修改到远程仓库
- 服务器项目目录下拉取最新的版本
喜欢的小伙伴,点个关注吧!
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com