问题
主要目的是在局域网下搭建一个git服务器,然后统一管理代码。
目前大部分博客都用到了Gitosis,本文所涉及的工作还不需要这么多,所以也不按照该库。
参考
http://blog.csdn.net/sin90lzc/article/details/7525670、
https://zhidao.baidu.com/question/200664193296308325.html?qbl=relate_question_1&word=ubuntu%20ssh-agent
https://www.cnblogs.com/ayseeing/p/3572582.html
https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137583770360579bc4b458f044ce7afed3df579123eca000
解决方案
1 按装必备库
sudo apt-get install git openssh-server openssh-client
2 在ubuntu下创建新用户,专门用于管理git代码托管
sudo adduser git
此处需要为git账户指定密码,请务必指定,不要设为空,否则会出错。
3 选择局域网下另外一台电脑,安装git(ubuntu下apt,windows下git for windows),然后创建秘钥文件id_rsa(密钥)和id_rsa.pub(公钥)。git会提示生成文件的路径。
ssh-keygen -C "your@email.com"
4 在ubuntu下切换到git账号,并将客户端的公钥文件id_rsa.pub的内容拷贝到ubuntu下/home/git/.ssh/authorized_keys文件中
/home/git/.ssh/authorized_keys
5 在git账号下新建一个仓库做测试
mkdir /home/git/code
cd /home/git/code
sudo git init --bare sample.git
6 查阅git服务器在的ip
git@git:ifconfig -a
git@git:
***
inet addr:192.168.1.100 ***
***
7 在客户端下载代码
git clone git@192.168.1.100:/home/git/code/sample.git
Cloning into 'sample'...
git@192.168.1.100's password:
remote: Counting objects: 3, done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (3/3), done.