yl197837 发表于 2017-6-1 11:46:20

CentOS搭建git服务器

  git服务器的搭建是非常简单的。
  1. 安装git
    一般服务器都自带git。如果嫌版本低,可以选择卸载重装。我觉得自带的就够了。
  2. 创建用户git



groupadd git
adduser git -g git
  3. 创建authorized_keys文件



cd /home/git
mkdir .ssh
chmod 700 .ssh
touch .ssh/authorized_keys
chmod 600 .ssh/authorized_keys
cd /home
chown -R git:git git
  要注意的是文件权限和所属用户。
  (后续的git clone如果需要密码,很有可能是git用户没有访问authorized_keys文件的权限)
  4. 客户端创建密钥并上传
  看清楚了,要在客户端运行如下命令。



ssh-keygen -t rsa -C "your_email"
  该命令会产生两个文件: id_rsa对应私钥,id_rsa.pub对应公钥。
  将id_rsa.pub中的内容写到服务器的authorized_keys文件中。
  如果有多个客户端,那么在authorized_keys文件中,一行保存一个客户端的公钥。
  5. 创建git仓库
  为了方便管理,所有的git仓库都置于同一目录下,假设为/home/gitrepo,



cd /home
mkdir gitrepo
chown git:git gitrepo
  接下来,创建我们的第一个git仓库:sample.git,



cd gitrepo
git init --bare sample.git
  最后一步,把仓库所属用户改为git。



chown -R git:git sample.git
  到此,git服务器搭建完毕。
  PS:
  以后每创建一个新的仓库,记得最后一步操作: 修改仓库所属用户为git。
  参考资料:

Git 服务器搭建
  -------------------------
  1. 查看系统用户组



-d:指定字段的分隔符,默认的字段分隔符为“TAB”;
-f:显示指定字段的内容;
cut -d: -f1 /etc/group
  2. 查看系统用户



cut -d: -f1 /etc/passwd
  3. clone仓库



git clone git@your_gitServer_ip:/home/gitrepo/sample.git
  4. push已有仓库



// 以master分支示范
git checkout master
git remote rm origin
git remote add origin git@your_gitServer_ip:/home/gitrepo/sample.git
git push -u origin master
页: [1]
查看完整版本: CentOS搭建git服务器