问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

搭建git服务器需要什么样的配置

发布网友 发布时间:2022-04-21 21:32

我来回答

1个回答

热心网友 时间:2022-04-15 00:35

搭建Git服务器需要准备一台运行Linux的机器,强烈推荐用Ubuntu或Debian,这样,通过几条简单的apt命令就可以完成安装。
假设你已经有sudo权限的用户账号,下面,正式开始安装。
第一步,安装git:
$ sudo apt-get install git

第二步,创建一个git用户,用来运行git服务:
$ sudo adser git

第三步,创建证书登录:
收集所有需要登录的用户的公钥,就是他们自己的id_rsa.pub文件,把所有公钥导入到/home/git/.ssh/authorized_keys文件里,一行一个。
第四步,初始化Git仓库:
先选定一个目录作为Git仓库,假定是/srv/sample.git,在/srv目录下输入命令:
$ sudo git init --bare sample.git

Git就会创建一个裸仓库,裸仓库没有工作区,因为服务器上的Git仓库纯粹是为了共享,所以不让用户直接登录到服务器上去改工作区,并且服务器上的Git仓库通常都以.git结尾。然后,把owner改为git:
$ sudo chown -R git:git sample.git

第五步,禁用shell登录:
出于安全考虑,第二步创建的git用户不允许登录shell,这可以通过编辑/etc/passwd文件完成。找到类似下面的一行:
git:x:1001:1001:,,,:/home/git:/bin/bash

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

这样,git用户可以正常通过ssh使用git,但无法登录shell,因为我们为git用户指定的git-shell每次一登录就自动退出。
第六步,克隆远程仓库:
现在,可以通过git clone命令克隆远程仓库了,在各自的电脑上运行:
$ git clone git@server:/srv/sample.git
Cloning into 'sample'...
warning: You appear to have cloned an empty repository.

剩下的推送就简单了。

管理公钥
如果团队很小,把每个人的公钥收集起来放到服务器的/home/git/.ssh/authorized_keys文件里就是可行的。如果团队有几百号人,就没法这么玩了,这时,可以用Gitosis来管理公钥。
这里我们不介绍怎么玩Gitosis了,几百号人的团队基本都在500强了,相信找个高水平的Linux管理员问题不大。

管理权限
有很多不但视源代码如生命,而且视员工为窃贼的公司,会在版本控制系统里设置一套完善的权限控制,每个人是否有读写权限会精确到每个分支甚至每个目录下。因为Git是为Linux源代码托管而开发的,所以Git也继承了开源社区的精神,不支持权限控制。不过,因为Git支持钩子(hook),所以,可以在服务器端编写一系列脚本来控制提交等操作,达到权限控制的目的。Gitolite就是这个工具。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
大同四区和市区的区别 大同云冈属于哪里 大同市云冈区建成区范围都有哪些 it wasn't long before i found a job.---before是什么意思 It wasn't long before a man from It wasn't long before和It won't be long before有什么区别吗? it wasn't long before和it won't be long before有什么不同?_百度知 ... 微信怎么查和一个好友的红包记录 马龙巴黎奥运会夺冠了吗 明天是中国的情人节??? 如何创建自己的私有git服务器 儿童办了社保卡怎么用 小孩子 社保卡 怎么用 儿童怎样申领社保卡 孩子多大可以申请社保卡 激活小孩子社保卡需要带什么 儿童社保卡有什么用 儿童社保卡怎么用 儿童社保卡要怎么办理 小孩子需要办社保卡吗 小孩子的社保卡怎么办理 请结合自己的工作实际,谈谈保育员如何管理本班的教... 如何做一个优秀的保育员 保育员工作小结 怎样做一名合格的幼儿园保育员 保育员考试都考什么内容 如何做一名合格的保育员 怎样做一名合格的保育员 保育员的工作就是打扫擦洗喂饭吗? 保育员应具备那些素质 怎样搭建git服务器 windows怎样搭建git服务器 如何搭建windows git服务器 linux怎么搭建git服务器 如何在windows上创建一个git服务器 windows系统怎么搭建git服务器 如何在mac系统下搭建git服务器 window怎么搭建git服务器配置 如何搭建git服务器 如何搭建windows git服务器配置 windows下git服务器怎么搭建 如何搭建linux git服务器 如何在Mac上快速搭建git服务器 windows 上怎么搭建git服务器 佩戴的玉观音开没开光有什么特征? 男士佩戴玉观音吊坠需要开光吗 戴开光玉观音有什么忌讳 玉观音如何开光 (转载) 玉观音开光后要注意些什么 怎么给玉观音开光?