`
redstarofsleep
  • 浏览: 443132 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

git服务器搭建

    博客分类:
  • git
阅读更多

我是在ubuntu和CentOS系统上分别搭建的git服务器,大致过程都是相同的:

 

基本上都是通过软件源直接安装的

 

第一步,给服务器安装ssh服务(这个CentOS自带了)

apt-get install ssh

 

第二步,安装git

    ubuntu:

apt-get install git

    CentOS

yum install git

 

CentOS还要再多一步,因为CentOS默认的perl少了这个模块.

yum install 'perl(Data::Dumper)'

 

其实到这里为止就安装完了,git已经能用了,远程访问使用ssh协议,用linux的用户登录访问即可.

 

但是在实际的生产环境中可不能这么用,服务器的安全性没法保障,git的权限没法管理.要管理git的权限有很多种方法,可以自己配置一个专门的用户,然后为此用户设置多个多个公钥,并且设置这个账户只能通过git的shell来访问就可以了,通过linux自己的权限管理来控制此用户对文件的访问.大体的思路就是这样,其实也不是很复杂.但是git既然有专门的工具来控制权限,就再安装个工具吧,有两个工具,一个是gitosis另一个是gitolite.我这里用的是gitolite,下面开始安装gitolite.

首先确认下,系统上perl是否已经安装了,ubuntu应该是自带的,没有的话用apt-get install perl安装一下.

然后在服务器上创建一个用户git,按提示为用户设定密码.

adduser git

用户创建成功后切换到这个用户

su - git

然后拷贝ssh公钥到服务器上,生成密钥的工具很多,xshell,git客户端都可以.或者用系统自带的ssh-keygen命令

ssh-keygen

生成一对密钥,生成过程中可以设置一个密码,也可以不设置,生成完后,密钥在当前用户的.ssh目录下(/home/git/.ssh/),密钥一对,有两个文件id_rsa.pub和id_rsa. 以pub结尾的是公钥,另一个是私钥.把公钥考出来重命名为<yourname>.pub.

以上这些准备工作都做好之后,开始安装gitolite.

首先,通过git拷贝gitolite

git clone git://github.com/sitaramc/gitolite

然后到/home/git下创建一个bin目录,不创建的话是会报错的

cd /home/git
mkdir bin

进入刚刚拷贝的gitolite目录执行安装

 

./install -ln
没有什么错误信息输出的话,安装就初步成功了,现在进入刚刚创建的bin目录,可以看到里面多了一个gitolite文件,然后执行

 

 

cd /home/git/bin
gitolite setup -pk <yourpath>/<yourname>.pub
这个个命令在服务器上创建了一个名为gitolite-admin的Git仓库。

 

现在你可以看到在git目录下多了一个repositories目录,这是git默认的仓库的路径,里面有两个仓库,一个是gitolite-admin,另一个是test.

 

至此,git以及gitolite就安装完成了

 

安装完成后,在本地工具里用刚刚的秘钥进行登录,拷贝gitolite-admin仓库到本地

git clone git@<gitserver>:gitolite-admin

克隆到本地后,打开gitolite-admin目录,可以看到conf和keydir两个目录. conf目录里是配置文件,keydir目录里是用户的公钥,打开keydir目录,可以看到刚才安装的时候导入的那个公钥,也就是现在登录的这个用户的公钥.如果需要添加用户,只要把他的公钥拷贝到keydir这个目录中即可,非常的简单.

 

然后打开conf目录下的gitolite.conf文件

刚开始这个文件可能是这样的:

repo gitolite-admin
    RW+                 = scott

repo testing
    RW+                 = @all

repo是后面是项目名称,RW+是权限,scott是用户

 

例如下面这个配置文件:

首先是定义了两个组, 一个是admin管理员组,另一个是om项目组

然后看到repo om部分,定义了om项目的权限,整个项目是admin组的用户有读写权限,master分支是admin组的用户有读写权限,dev分支是om组用户有读写权限.如果需要分配只读权限的话分配一个R即可.

@admin = abc
@om = abc bcd

repo gitolite-admin
    RW+     =   abc

repo testing
    RW+     =   @all

repo om
    RW+     =   @admin
    RW+ master = @admin
    RW+ dev  =   @om

 

这样就完成了一个简单的git服务器以及权限配置.

 转载请注明出处
分享到:
评论

相关推荐

    Git服务器搭建.docx

    "Git服务器搭建详解" Git 服务器搭建是很多开发者和项目管理者需要掌握的重要技能,本文将手把手教你搭建自己的 Git 服务器,从安装 Git 到创建证书登录、初始化 Git 仓库、克隆仓库等步骤,一步一步地指导你完成...

    window下本地git服务器搭建详解

    ### Window下本地Git服务器搭建详解 #### 一、前言 随着版本控制系统的不断发展,Git因其灵活高效的特点而成为开发者的首选工具。然而,在实际工作中,很多组织由于隐私保护或成本考虑,倾向于搭建自己的Git服务器...

    svn和git服务器搭建手册.xlsx

    此资源主要讲解了window环境下怎样搭建svn和git服务器,如何创建用户和组,并对仓库进行用户访问权限设置等。

    搭建git服务器

    ### 搭建Git服务器知识点详解 #### 一、前言 随着开源文化和协作开发模式的兴起,Git作为一款分布式版本控制系统,在软件开发领域扮演着越来越重要的...希望本文能为您在Git服务器搭建方面提供有价值的指导和支持。

    git服务器搭建.pdf

    Git服务器搭建的知识点: 1. Git服务器的基本概念: Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git服务器则是存放Git仓库(即项目源代码)的中心位置,以便多个开发者可以从中...

    git基础(git服务器搭建+git教程+git廖雪峰)

    ### Git服务器搭建 1. **安装Git服务器**:在服务器上安装Git,通常使用`sudo apt-get install git`(Ubuntu/Debian)或`yum install git`(CentOS/RHEL)。 2. **初始化仓库**:在服务器上选择合适的位置创建空仓库...

    GIT服务器搭建笔记

    搭建openshift需要使用到git服务器。git服务器搭建、使用。

    centos-git服务器搭建.doc

    centos_git服务器搭建 使用Git来部署一个Web站点笔记

    Git服务器搭建和配置

    Git服务器搭建和配置

    GIT服务器的搭建与使用

    在本文中,我们将详细探讨在Windows 2003操作系统环境下搭建GIT服务器的整个流程。首先,我们将介绍所需软件的安装,然后是具体的程序配置,包括服务端和客户端的配置,以及如何配置以支持远程无密码登录。最后,...

    个人总结搭建git服务器仓库采用无密登录方式以及TortoiseGit的用法

    Git 服务器搭建是通过编译安装 Git 软件来实现的。在安装过程中,需要安装依赖项 libiconv,并在编译时指定 iconv 的安装路径。编译安装时可能会出现错误,如无法找到 ExtUtils/MakeMaker.pm,可以通过安装 perl-...

    Ubuntu下Git服务器搭建

    Ubuntu下Git服务器打搭建 客户端的使用教程和git学习资料等,资源分虽然要了10分但是这是我一周总结的,现在没分了想坑一点积分。有积分后我就免费下载了,下载的人不要为要积分而喷。也谢谢大家给我积分

    git服务器搭建.rar

    本教程将详细介绍如何利用提供的资源搭建属于自己的Git服务器,从而实现远程仓库的功能。 首先,我们需要了解Git的基本概念。Git是一款分布式版本控制系统,由Linux之父Linus Torvalds开发,它的主要功能是跟踪对...

    Git服务器搭建

    这是一个Git私服搭建的文档,来源: https://www.cnblogs.com/jeremylee/p/5626240.html 前四步为配置java环境 第五步:下载Gitblit.下载地址:http://www.gitblit.com/ 第六步:解压缩下载的压缩包即可,无需...

    centos中GIT服务器搭建及使用密钥连接.pdf

    本文将详细介绍如何在CentOS操作系统中搭建Git服务器以及如何通过SSH密钥实现安全连接,特别是针对Windows客户端的配置。 首先,我们需要在CentOS服务器上安装Git。可以通过`yum`包管理器来完成这一任务,执行`yum ...

    FreeBSD11.0下Git服务器搭建

    freeBSD11.0系列安装文档,本人实际操作记录,希望给大家带来上些帮助

    Windows上搭建Git服务器.pdf

    Git 服务器搭建的重要步骤包括生成密钥对、安装 copssh 和 MSysGit、编辑 etc/sshd_config 文件、创建 authorized_keys 文件、复制 MSysGit 文件到服务器上等。这些步骤都是搭建 Git 服务器所必需的。 在 Git ...

Global site tag (gtag.js) - Google Analytics