搭建gitolite服务器

在服务器上创建git用户和组

groupadd -g gid git
useradd -u uid -g gid -d /home/git git 
passwd git

生成服务器公钥私钥对

ssh-keygen
cp id_rsa.pub gitadmin.pub

下载gitolite源码

cd /home/git
git clone [email protected]:sitaramc/gitolite.git

查看说明文档

vim README.markdown

创建gitolite安装目录

mkdir -p $HOME/bin

安装

gitolite/install -to $HOME/bin

设置环境变量(CentOS)

vim .bashrc
    export GITOLITE_HOME=/home/git/
    export PATH=$PATH:$GITOLITE_HOME/bin

设置服务器本地为gitolite管理账户

gitolite -to $HOME/bin

这时/home/git目录下就会出现repositores目录

在服务器上clone下gitolite-admin库进行源码库和权限的设置

git clone [email protected]:gitolite-admin.git

添加普通用户

开发人员或其他需访问git源码库的人员在自己使用的电脑上运行

ssh-keygen

将生成的pub文件更改文件名后上传的gitolite-admin库中,pub文件上传至keydir目录下,另外

修改conf目录下的gitolite.conf文件,文件格式如下:

@admin=gitadmin
@dev=gitadmin dev01 dev02 dev03 
@hudson=hudson01
@third=third01 third02 third03

repo    gitolite-admin
        RW+     [email protected]

repo    testing
        RW+     [email protected]

repo	repoone
	RW+	[email protected] @admin
	R	[email protected]

repo	repotwo
	RW+	[email protected] @admin

repo	path/.+
	C	[email protected]
	RW+	[email protected] @admin
	R	[email protected]

repo	mail
	RW+	[email protected]

repo	dev/.+
	C	[email protected]
	RW+	[email protected]
	R	[email protected]

repo	path1/path2/path3/.+
	R	[email protected]
	RW+	[email protected]
	- master develop V1.0.0 V2.0.0 [email protected]

上面的文件有用户分组、源码库、路径匹配(path1/path2/path3/.+)、分支权限控制(- master develop V1.0.0 V2.0.0)等功能

备注

SSH、SFTP无密码登陆设置

SSH客户端运行ssh-keygen生成公钥后,运行一下命令,将公钥文件发送到远端服务器上去

ssh-copy-id -i ~/.ssh/username.pub [email protected]
时间: 2024-08-07 00:07:11

搭建gitolite服务器的相关文章

Windows环境下通过Cygwin搭建Gitolite服务器

本文参考:http://blog.csdn.net/benkaoya/article/details/8884677 背景: 去年接触Git前我们团队甚至还在用VSS,一次外包项目中由于需要和外包团队紧密合作,由外包团队引入了Git. 之后,由于团队规模的不断扩大,以及体会到了Git强大的分支功能,我们所有的项目都迁移到了Git上. 再之后,新人的不断加入,领导们担心起权限的问题,我们的服务器管理员考虑使用Gitsis或者Gitolite,但是查找资料研究了一翻之后觉得太繁琐了,一直搁置. 然后

Gitolite服务器搭建配置

最近开发说需要搭建一个git服务器来用,就顺便学了下,也记下来方便以后参考 安装GIT ## 安装依赖包 yum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-devel ## 安装libiconv依赖包 wget http://ftp.gnu.org/gnu/libiconv/libiconv-1.14.tar.gz tar -xf libiconv-1.14.tar.gz  cd libiconv-1.1

使用gitolite搭建Git服务器

使用gitolite搭建Git服务器 运行环境 Ubuntu18.04 gitolite 搭建过程 安装好Ubuntu18.04系统 更新系统 sudo apt update sudo apt upgrade 安装vim sudo apt install vim 安装git sudo apt install git 创建git仓库 # 创建git用户 sudo adduser git # 切换到git用户 su git # 进入git用户目录 cd ~ 安装gitolite git clone

如何在服务器上搭建git服务器

参考文章: http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137583770360579bc4b458f044ce7afed3df579123eca000 http://wlog.cn/soft/git-ssh-server-for-debian.html 在远程仓库一节中,我们讲了远程仓库实际上和本地仓库没啥不同,纯粹为了7x24小时开机并交换大家的修改. GitHub就

Git_搭建Git服务器

在远程仓库一节中,我们讲了远程仓库实际上和本地仓库没啥不同,纯粹为了7x24小时开机并交换大家的修改. GitHub就是一个免费托管开源代码的远程仓库.但是对于某些视源代码如生命的商业公司来说,既不想公开源代码,又舍不得给GitHub交保护费,那就只能自己搭建一台Git服务器作为私有仓库使用. 搭建Git服务器需要准备一台运行Linux的机器,强烈推荐用Ubuntu或Debian,这样,通过几条简单的apt命令就可以完成安装. 假设你已经有sudo权限的用户账号,下面,正式开始安装. 第一步,安

CentOS搭建Git服务器及权限管理

声明:本教程,仅作为配置的记录,细节不展开,需要您有一点linux的命令基础,仅作为配置参考. 1. 系统环境 系统: Linux:CentOS 7.2 64位 由于CentOS已经内置了OpenSSH,如果您的系统没有,请自行安装. 查看ssh版本 $ ssh -V # 输出以下表示没问题,可以继续. 版本可能不一致,能用即可. OpenSSH_6.6.1p1, OpenSSL 1.0.1e-fips 11 Feb 2013 避免系统环境和其他的不一致,请核对您系统的版本,其他发行版请对应修改

使用Gitosis搭建Git服务器

使用Gitosis搭建Git服务器 作者: JeremyWei | 可以转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明 网址: http://weizhifeng.net/build-git-server-with-gitosis.html Git 1.安装gitosis 首先是获取gitosis(这里假设你已经安装过git): git clone git://github.com/res0nat0r/gitosis.git 接下来安装gitosis: sudo python s

Linux下搭建SVN服务器及自动更新项目文件到web目录(www)的方法

首先搭建SVN服务器 1,安装SVN服务端 直接用apt-get或yum安装subversion即可(当然也可以自己去官方下载安装) sudo apt-get install subversion 2,创建版本库 svnadmin create /home/myrepos    //这里的文件目录自己随便设置 3,配置svnserve 上述版本库/home/myrepos建立后在文件夹下会生成conf文件夹,进入/home/myrepos/conf下面会有下面3个文件 authz passwd 

在CentOS搭建Git服务器 转

在CentOS搭建Git服务器 来自 :http://www.jianshu.com/p/69ea5ded3ede 前言 我们可以GitHub发布一些开源代码的公共仓库,但对于私密仓库就需要收费了.公司内部通常会搭建自己的Git服务器,我也通过在自己的服务器上搭建练习一下. 开始前先说一下服务器信息,这里是阿里云的CentOS 6.5 64位操作系统. 一 确认服务器是否安装Git [[email protected] git]# rpm -qa gitgit-1.7.1-3.el6_4.1.x