Ubuntu环境下搭建git服务器

来源:互联网 发布:联通网络开发面试题 编辑:程序博客网 时间:2024/05/29 15:36

安装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_keyscat /tmp/id_rsa_lisi.pub >> ~/.ssh/authorized_keys

有时候ssh使用时会出现错误信息

Agent admitted failure to sign using the key

解决办法为在客户机上使用

ssh-add id_rsa

将私钥加进来

0 0