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服务器的主要内容,如果未能解决你的问题,请参考以下文章

ubuntu 16.04 下搭建git服务器(gitosis+git-daemon+gitweb)

Git版本控制之ubuntu搭建Git服务器

手把手教你在 Ubuntu 上搭建 Git 服务器

在windows10下搭建ubuntu环境

Ubuntu下 git 服务器的搭建转

Ubuntu下 git 服务器的搭建转