系列文章目录
Table of Contents
前言
平常都是在用 GitHub
、GitLab
、Gitee
等服务,那我们如何自己搭建一个 Git Server
,这里我们搭建一个简单的 Git Server
操作
说明: 本示例在一台云服务器上搭建的 git 服务,其中 1,2,3,4,5 均为在云服务器进行的操作。当然也可以在虚拟机或者 docker 中进行操作
1. 创建 git 用户
adduser
--system
--shell /bin/bash
--gecos 'Git Version Control'
--group
--disabled-password
--home /home/git
git
2. 创建 .ssh 目录
/home# su git
/home# cd git
/home/git# mkdir .ssh && chmod 700 .ssh
/home/git# touch .ssh/authorized_keys && chmod 600 .ssh/authorized_keys
3. 自定义仓库的根目录
/home/git# mkdir code_repository
注意: 这里需要使用 git 用户进行操作
4. 在服务器上创建个裸仓库
/home/git# cd code_repository/
/home/git/code_repository# mkdir abc.git
/home/git/code_repository# cd abc.git/
/home/git/code_repository/abc.git# git init --bare
注意: 这里需要使用 git 用户进行操作
5. 手动配置一个公钥
将我们自己本地的公钥文件加入 /home/git/.ssh/authorized_keys
中
6. 在本地测试一下能否操作
$ mkdir abc
$ cd abc
$ git init
$ touch README.md
$ git add .
$ git commit -m "first add reademe.md"
$ git remote add origin ssh://git@xxx.xx.xx.xx:/home/git/code_repository/abc.git
$ git push -u origin master
注意: 这里在本机运行的,不是在服务器上
总结
这种方式创建的仓库,并没有设置任何权限,只要在 authorized_keys
的公钥用户就可以对仓库进行读写操作
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。