在ubuntu18.04上搭建git服务
发布于:
想搭建一个git server放代码,网上有无数教程都不怎么靠谱。找到一个教程还算比较详细,只是其中有一处遗漏,修改一下就可以正确安装了。
遗漏处为:第五步:在服务器上创建代码仓库:
git init --bare /home/git/sample.git
简易步骤如下:
#服务器端:
1.创建git用户:
sudo useradd git
sudo passwd git
然后赋予管理员权限,即将其加到/etc/sudoers文件中,添加时参考root的配置即可。
2.在服务器上创建代码仓库,这里我在/home/git/repo下执行命令:
git init --bare /home/git/repo/sample.git
成功执行后在服务器上创建了sample.git文件夹。 然后将该文件夹所有者设为git,执行如下命令:
sudo chown -R git:git sample.git
#客户端:
1.生成密钥
ssh-keygen -t rsa
注意,不要输入文件名,一直回车就好,不要输入任何内容,全部使用默认配置,成功后会自动在用户的home目录下创建.ssh文件夹,并将生成的公钥和密钥放到这个文件夹下。
2.将.ssh文件夹下生成的id_rsa.pub文件上传到服务器git用户home目录(/home/git)下,在服务器上使用git用户登录,查看home目录下是否有.ssh文件夹,如果没有,手动创建,如果有进入其中查看是否有名为authorized_keys文件,如果没有,同样手动创建即可。确认authorized_keys文件存在后执行
cat ../id_rsa.pub>>authorized_keys
命令,将客户端用户公钥导入到验证文件。
3.在客户端上新建存储代码的文件夹,进入该文件夹,执行
git clone git@gitserver:/home/git/repo/sample.git
命令,该命令的作用是使用git用户身份从服务器拉取代码,若可正常拉代码且无需输入密码,说明搭建成功。之后就可以像公共仓库一样进行代码管理了。
#将本地项目上传到git:
1.在服务器端创建工程目录并将目录赋权给git用户:
git init --bare /home/git/repo/YouProjectName.git
sudo chown -R git:git /home/git/repo/YouProjectName.git
2.在本地工程目录里执行如下命令:
git init
git add .
git commit -m 'first commit'
git remote add origin git@YourGitServerAddress:/home/git/repo/YouProjectName.git
git push -u origin master
至此,一个新的工程创建完毕,可以各种git了。