git仓库搭建及客户端使用

这里只在linux上做git仓库搭建

这里只在linux上做git仓库搭建

这里只在linux上做git仓库搭建

 

 

 linux 服务器上安装及配置git

一、安装git

  yum install -y git (centos)

  apt-get  install -y git  (ubuntu)

二 检测git用户是否存在,不存在创建 

  检测:(这里表名git用户是存在的) 

id git

  

  不存在git的操作:

groupadd git                                  # 添加git用户组
useradd -g git -s /usr/bin/git-shell git      # 添加git用户 -g git用户组  -s 指定shell登陆方式


# /usr/bin/git-shell确认存在,不存在find搜索所在绝对路径 (说明:git-shell 是为了防止 用户已ssh 登陆服务器的。 )

 

三、查看git用户

cat /etc/passwd

结果:

其中/home/git表示git用户的登陆目录,记住这个目录。这个可以自己指定。(指定的话,自己可以看useradd 或usermod 命令)

 

四、创建公钥存储地址

mkdir -p /home/git/.ssh                   #以递归形式创建.ssh目录
touch /home/git/.ssh/authorized_keys    #创建存储公钥文件 authorized_keys 
chown -R git:git /home/git          #改变目录 权限用git用户 git用户组

 

五、创建裸仓

mkdir -p /home/gitdata/test.git            # 创建裸仓地址 test.git
git init --bare /home/gitdata/test.git   # 初始化版本库
chown -R git:git /home/gitdata         # 改变目录权限

 

六、ssh 设置

vim /etc/ssh/sshd_config

以下三个配置 去除前面的 # 

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

 

客户端的配置

一、先下载git ,这里不讲,自己下载

 

二、配置git

git config --gloabl user.name 'jmz'                # 设置你的名称
git config --global user.email '1125378902@qq.com'       # 设置你的邮箱

 

三、客户端创建ssh公钥和私钥

ssh-keygen -t rsa -C "1125378902@qq.com"

第一个框框表示你的秘钥存储地址(记住这个地址

第二个框框是要你输入 设置密码,你可以设置密码直接回车。免得以后老是需要密码提交

 

四、进入到你自己本地的共秘钥存储的地方(C:/User/HASEE/.ssh  上面生成秘钥的第一个框框)

 

五、将公钥放入服务器中

打开id_rsa.pub文件的内容,将内容放入至 服务器中/home/git/.ssh/authorized_keys

 

六、克隆服务器中的裸仓(/home/gitdata/test.git)

 git clone git@192.168.33.11:/home/gitdata/test.git                                 # 192.168.33.11 是我的linux 服务器ip

因为是裸仓,所以没有代码

 

七、修改过后你就可以提交了git使用方式  

 

再进入服务器

一、修改文件权限

cd /home/git/.ssh                               # 进入/home/git/.ssh  目录下
chmod 400 authorized_keys               # 修改用户权限 创建者可读 ,其他用户不可操作
cd ../                          # 返回上一层目录 
chmod 700 .ssh                      # 修改用户权限 创建者可读写执行 ,其他用户不可操作

 

注意事项

正常获取 

git clone git@192.168.33.11:/home/gitdata/test.git

 

非22端口获取 (如8522端口)

git clone ssh://git@192.168.33.11:8522/home/gitdata/test.git

 

ssh 登陆

ssh git@10.3.0.99

ssh root@192.168.1.12 -p 22

 

posted @ 2018-03-19 14:22  xiaobaiskill  阅读(317)  评论(0编辑  收藏  举报