linux centos7安装git服务器配置,CentOS7 Linux环境下搭建Git仓库

1、安装依赖库

yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel

2、安装Git

yum install git

$ git --version

git version 1.8.3.1

3、创建git用户组和用户

# groupadd git

# useradd git -g git

4、创建证书登录

$ su - git

$ cd /home/git/

$ mkdir .ssh

$ chmod 755 .ssh

$ touch .ssh/authorized_keys

$ chmod 644 .ssh/authorized_keys

收集所有需要登录的用户的公钥,公钥位于id_rsa.pub文件中,把我们的公钥导入到/home/git/.ssh/authorized_keys文件里,一行一个。

5、初始化Git仓库

$ su - git

$ mkdir gitrepo

$ chown git:git gitrepo/

$ cd gitrepo

$ git init --bare learngit.git

初始化空的 Git 版本库于 /home/git/gitrepo/learngit.git/

6、git客户端

下载客户端:https://git-scm.com/

参考:http://www.what21.com/u/10019/6699619077197581376.htm

进入Git Bash命令行客户端

7、客户端创建SSH公钥和私钥

进入Git Bash命令行客户端:$ ssh-keygen -t rsa -C "[email protected]"

8、服务器端Git打开RSA认证

SSH配置

vi /etc/ssh/sshd_config

PubkeyAuthentication yes

RSAAuthentication yes

AuthorizedKeysFile      .ssh/authorized_keys

重启SSH服务

service sshd restart

7、客户端公钥导入服务器端 /home/git/.ssh/authorized_keys 文件

将客户端生成的~/.ssh/id_rsa.pub内容,复制到服务器端的./ssh/authorized_keys中。

8、客户端clone 远程仓库

$ git clone ssh://[email protected]/home/git/gitrepo/learngit.git

9、SVN与Git的最主要的区别

SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以首先要从中央服务器哪里得到最新的版本,然后干活,干完后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,如果在局域网还可以,带宽够大,速度够快,如果在互联网下,如果网速慢的话,就纳闷了。

Git是分布式版本控制系统,那么它就没有中央服务器的,每个人的电脑就是一个完整的版本库,这样,工作的时候就不需要联网了,因为版本都是在自己的电脑上。既然每个人的电脑都有一个完整的版本库,那多个人如何协作呢?比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。

10、Git工作区 暂存区 版本库概念

(1) 工作目录(working Directory):我们肉眼能够看到的目录及相应的文件;

(2) 暂存区(Staging Area,也有叫Index):中间过渡区域,可以通过git add命令将工作目录文件放入该区域;

(3) 版本库(Repository):存放版本、分支、Commits的相关信息,通过git commit命令将Staging Area区域的内容放在版本库中;版本库的信息以文件的形式存放在工作目录下的.git隐藏文件夹中。

你可能感兴趣的:(linux)