Ubuntu环境下搭建git服务器
Posted R-Pursue
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ubuntu环境下搭建git服务器相关的知识,希望对你有一定的参考价值。
安装git
sudo apt-get install git
添加git用户,比如我要添加一个叫androidgit的用户,主目录设置为/home/androidgit
sudo useradd -d /home/androidgit -s /usr/bin/git-shell androidgit
为androidgit设置密码
passwd androidgit
输两次密码就ok
选用,修改设置(禁用shell登录)
gedit /etc/passwd
找到类似下面的一行:
androidgit:x:1001:1001:,,,:/home/androidgit:/bin/bash
改为:
androidgit:x:1001:1001:,,,:/home/androidgit:/usr/bin/git-shell
为androidgit用户创建一个新仓库的方法
cd /home/androidgit #进入这一目录
sudo git init --bare androidtest.git #创建空仓库
sudo chown -R androidgit:androidgit androidtest.git #将这一仓库的所有权给androidgit
如果你是以android用户登录的话,其实就没必要更改仓库所有者了
客户端克隆远程仓库
git clone androidgit@121.2.2.2:androidtest.git
121.2.2.2为仓库IP地址,如果远端仓库无对应仓库,则无法克隆(一句废话)
管理公钥
1.公钥的生成
ssh-keygen
这句话会让你生成你的密钥,会让你选路径密码什么的,一路回车下去会默认在用户主目录下.ssh文件夹下
完成后会在home目录下的.ssh目录中生成两个文件id_rsa(私有密钥)和id_rsa.pub(公钥)。
生成的公钥即id_rsa.pub发给为以后要发给别人的
2.公钥的管理
在git用户目录下
mkdir .ssh
在git用户新建一个.ssh的目录,将开发者的SSH公钥添加到git这个用户的authorized_keys这个文件当中。如有zhangsan,lisi两个开发者。
cat /tmp/id_rsa_zhangsan.pub >> ~/.ssh/authorized_keys
cat /tmp/id_rsa_lisi.pub >> ~/.ssh/authorized_keys
有时候ssh使用时会出现错误信息
Agent admitted failure to sign using the key
解决办法为在客户机上使用
ssh-add id_rsa
将私钥加进来
以上是关于Ubuntu环境下搭建git服务器的主要内容,如果未能解决你的问题,请参考以下文章