如何搭建git服务器(转载)

  • Post author:
  • Post category:其他


一、前言

这几天想在自己服务器上写点东西,想安装个git,本人呢是个小白,服务器一窍不通,晕晕晕,在网上找了好多安装的方法,结果都不行,,,终于让我找到了一篇,终于让偶试成功了,要记下来,要记下来,要记下来,说三遍

现在越来越多的公司用git进行版本控制,不过git是默认是开源的,如果私有的话是需要付费的,如果不想付费自己可以搭建一个git服务器用来版本控制。

二、服务器端操作

1、安装git

sudo apt-get install git(sudo apt-get update)

2、创建一个git用户

sudo adduser git

3、创建登录证书

在git用户目录下创建.ssh文件夹并在其下创建文件authorized_keys

sudo mkdir .ssh
sudo touch .ssh/authorized_keys

收集需版本控制下的用户的公钥,就是他们自己的

id_rsa.pub

文件,这个需要生成,具体可以Google生成,把所有公钥导入到

/home/git/.ssh/authorized_keys

文件里,不同的公约换行

4、选定仓库目录,初始化仓库

比如我是git用户根目录下的agame-server文件夹

sudo git init --bare agame-server

5、将这个目录授权git用户组

sudo chown -R git:git agame-server

6、为了安全考虑,我们禁用shell登录,编辑

/etc/passwd

找到类似下面的代码并更改

git:x:1001:1001:,,,:/home/git:/bin/bash
改成
git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell

三、客户端操作

客户端操作就比较简单了直接clone下来就好了

git clone git@192.168.0.197:agame-server
//这个ip是我局域网git服务器的ip 具体根据自己的服务器更改 agame-server是我的git仓库同上服务器初始化的仓库  如果是/var/www/agame-server  就是git clone git@192.168.0.197:/var/www/agame-server
//如果在windows上提示没有权限创建文件夹  就以管理员身份运行下git bash
//一开最好选择下分支不然可能会提交失败不知道提交到那个分站 git fetch origin(这是我的分支 因为自己搭建的测试服务器没有多个分支)