`
jackliu2013
  • 浏览: 11254 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

CentOS 6.4 搭建git 服务器

阅读更多

此文件是依据markdown所编写,更好效果参见本人github的文档https://github.com/jackliu2013/recipes/blob/master/doc/linux/CentOS_6.4_git服务器搭建.md


##CentOS安装Git服务器 Centos 6.4 + Git 1.8.2.2 + gitosis##

1.查看Linux系统服务器系统版本

```
    cat /etc/redhat-release   # 查看系统版本
    
    CentOS release 6.4 (Final)
    
    ifconfig                 # 查看服务器的IP
    eth0      
          Link encap:Ethernet  HWaddr 00:23:8B:FA:78:92  
          inet addr:192.168.100.202  Bcast:192.168.100.255  Mask:255.255.255.0
          inet6 addr: fe80::223:8bff:fefa:7892/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:543645 errors:0 dropped:0 overruns:0 frame:0
          TX packets:157155 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:383527379 (365.7 MiB)  TX bytes:13270106 (12.6 MiB)
          Interrupt:16

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

```

2.在服务器上安装git及做些操作

 - 执行命令
`
sudo yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel
`
 - 同时下载git-1.8.2.2.tar.gz文件,然后将其`mv` 到`/usr/local/src`目录。[git-1.8.2.2.tar.gz安装包下载地址][1]

```
cd /usr/local/src
sudo tar -zvxf git-1.8.2.2.tar.gz
cd git-1.8.2.2

sudo make prefix=/usr/local/git all
sudo make prefix=/usr/local/git install

```

 - 增加软连接
```
sudo ln -s /usr/local/git/bin/* /usr/bin/

git --version  #如果能显示版本号,即表示成功`

```

3.在服务器安装gitosis
```
sudo yum install python python-setuptools

cd /usr/local/src

git clone git://github.com/res0nat0r/gitosis.git

cd gitosis

python setup.py install  

#显示Finished processing dependencies for gitosis==0.2即表示成功

```


4.在开发机上,生产密钥并上传到服务器上
```
ssh-keygen -t rsa   #一路回车,不需要设置密码

#上传公钥到服务器(默认SSH端口22)
scp ~/.ssh/id_rsa.pub tailin@192.168.100.202:/tmp
```

或编辑`/etc/hosts`文件,在`/etc/hosts`文件里添加如下文本:
```
# local git server
192.168.100.202 zgit
```
然后再上传自己的公钥到服务器
```
scp ~/.ssh/id_rsa.pub tailin@zgit:/tmp/

# 登录到git服务器
ls /tmp/id_rsa.pub  #显示已经上传的密钥

```

5.服务器上生成git用户,使用git用户并初始化`gitosis`

```
# 创建git版本管理用户 git
sudo useradd -c 'git version manage' -m -d /home/git -s bin/bash  git

# 更改git用户的密码
sudo passwd git

# su 到git用户
su - git
gitosis-init < /tmp/id_rsa.pub

#显示以下信息即表示成功
#Initialized empty Git repository in /home/git/repositories/gitosis-admin.git/
#Reinitialized existing Git repository in /home/git/repositories/gitosis-admin.git/

#删除密钥
rm -rf /tmp/id_rsa.pub

```

6.在个人开发机上导出项目管理
```
mkdir -p /repo
cd /repo
git clone git@zgit:gitosis-admin.git

```

7.在个人开发机增加及设置管理项目
```
cd /repo/gitosis-admin

# 查看git服务器已经上传密钥
ls keydir  

cat keydir/ltl@jackliu-ThinkPad.pub  

#ltl@jackliu-ThinkPad.pub为已经上传的开发机生成的公密

#显示密钥 最后的字符串为 密钥用户名 这里为 ltl@jackliu-ThinkPad
vim gitosis.conf

#在文件尾增加以下内容

[group test-git]            # 具有写权限的组名称
writable = test-git         # 该组可写的项目名称
members = ltl@jackliu-ThinkPad  guangyun.ni@yeepay.com     #该组的成员(密钥用户名) 多个用户协同开发时,以空格分隔

# 如果要增加只读的组 参考如下
# [group test-git-readnoly]          # 具有都权限的组名称
# readonly = test-git                # 该组只读的项目名称
# members = ltl@jackliu-ThinkPad     # 该组的成员


#提交修改
git add .
git commit -a -m "add test-git repo"
git push

```

8.在个人开发机上初始,增加及使用项目test-git

```
cd ~/repo  

mkdir test-git   

cd test-git  

git init  

touch readme  

git add .   

git commit -a -m "init test-git"  

git remote add origin git@zgit:test-git.git  

git push origin master  

```

9.增加协同开发者的公钥key到git服务器  
 
 - 执行`cd repo/gitosis-admin/keydir`切换目录
 
 - 把协同开发者的id_rsa.pub 文件里的数据 拷贝到 对应的开发者的`密钥用户名.pub`文件。如把密钥用户名 guangyun.ni@yeepay.com 的 id_rsa.pub 文件中文本 粘贴到 guangyun.ni@yeepay.com.pub 文件里,并保存

 - 然后将添加数据后的目录更新到git服务器
 
 ```
 
 git add .  
 git commit -am "add guangyun.ni@yeepay.com.pub file"  
 git push origin master  
 
 ```
 

 
 本文档参考:
 [CentOS git搭建参考1][2],
 [CentOs上搭建git服务器][3]

  [1]: http://code.google.com/p/git-core
  [2]: http://blog.sina.com.cn/s/blog_86fe5b440101975o.html
  [3]: http://www.cnblogs.com/nasa/archive/2012/05/31/2528901.htmljackliu@jackliu-ThinkPad:~/workspace/recipes/doc/linux$

分享到:
评论

相关推荐

    linux centos6.4搭建DHCP服务器

    ### Linux CentOS 6.4 搭建 DHCP 服务器知识点详解 #### 一、概述 在 CentOS 6.4 系统中搭建 DHCP 服务器,主要用于自动为局域网内的客户端分配 IP 地址及其他网络参数,从而简化网络管理、提高网络效率。本文将...

    centos离线搭建git服务器(附教程,源码包)

    在本文中,我们将深入探讨如何在CentOS操作系统上离线搭建一个Git服务器,这是一个非常实用的技能,尤其对于那些网络环境有限或者希望在内部网络环境中管理代码仓库的开发者和团队而言。我们将使用Gogs作为Git服务的...

    CentOS6.4 SSH Telnet服务器配置

    ### CentOS 6.4 SSH与Telnet服务器配置详解 #### 一、SSH服务器概述与功能 **SSH**(Secure Shell)是...通过本文所述的方法和步骤,用户可以轻松地在CentOS 6.4环境中搭建并使用SSH服务器,以满足实际工作中的需求。

    centos6.4iso镜像

    centos6.4的安装镜像。可以下一个VM,安装流程百度一大堆。

    CentOS6.4单用户下root密码破解

    ### CentOS6.4单用户模式下Root密码破解详解 #### 一、背景介绍 在Linux系统管理中,可能会遇到忘记root账户密码的情况。这不仅会给系统维护带来不便,还可能影响到系统的正常使用。CentOS 6.4作为一款广泛使用的...

    CentOS7安装Git

    ### CentOS7安装Git知识点详解 #### 一、前言 在CentOS 7环境中安装Git是许多开发人员和系统管理员的必备技能之一。通过本文档,我们将详细介绍如何在CentOS 7系统上安装Git,包括从下载源码包到完成安装的整个...

    CentOS6.4搭建LAMP环境

    本篇文章将详细讲解如何在CentOS 6.4操作系统上搭建LAMP环境。 首先,我们需要了解`Linux`,它是整个LAMP架构的基础,这里是CentOS 6.4,一个稳定且广泛使用的Linux发行版。安装CentOS 6.4后,确保系统已更新至最新...

    vm虚拟机centos6.4百度云盘下载地址(永久有效)

    VMware上的centos6.4虚拟机,直接下载解压导入即可使用

    CentOS 6.4安装配置LAMP服务器_Apache+PHP5+MySQL

    CentOS 6.4安装配置LAMP服务器

    CentOS6.4搭建reviewboard

    在本文中,我们将深入探讨如何在CentOS 6.4上搭建ReviewBoard,这是一个流行的开源代码审查工具。首先,确保你的系统是CentOS 6.4的最小安装版,因为我们将从基础开始构建必要的组件。 ### 一、准备工作 1. **安装...

    Centos6.4_安装oracle_11g教程

    在本教程中,我们将探讨如何在CentOS 6.4操作系统上安装Oracle 11g数据库。Oracle 11g是Oracle公司推出的企业级数据库管理系统,适用于大型企业应用,提供高性能、高可用性和安全性。在CentOS 6.4上安装Oracle 11g...

    CentOS 6.4 i386的学习笔记-001 自定义安装图形界面

    《CentOS 6.4 i386的学习笔记-001 自定义安装图形界面》不仅是一份详细的安装指南,更是一个学习资源库,它包含了自定义安装的步骤、工具推荐、安装环境搭建、以及具体的安装细节。这份笔记对于希望深入了解CentOS...

    CentOS 6.4 开启Telnet-Service服务

    在Linux操作系统中,CentOS 6.4是一个广泛使用的版本,它提供了稳定和安全的服务器环境。然而,为了实现远程访问和诊断,有时我们需要开启一些网络服务,如Telnet服务。本文将详细介绍如何在CentOS 6.4上启用Telnet...

    centos6.4U盘安装

    ### CentOS 6.4 U盘安装详细指南 #### 一、前言 随着Linux系统的广泛应用,CentOS作为一款稳定、安全且免费的企业级操作系统受到了众多用户的青睐。在实际操作过程中,有时我们需要通过U盘来安装CentOS系统,尤其是...

    linux下搭建git服务器步骤

    - **服务器**: CentOS 6.6 + Git (version 1.7.1) - **客户端**: Windows 10 + Git (version 2.8.4.windows.1) #### 第一步: 安装Git 在服务器端与客户端上分别安装Git。 **服务器端安装:** ```bash # 使用YUM包...

    CentOS 6.4安装(超级详细图解教程)

    CentOS,全称为Community ENTerprise Operating System,是一款基于Linux的开源操作系统,以其稳定性和安全性受到广大用户的喜爱,尤其在服务器领域应用广泛。本教程将针对初学者,提供一份详尽的CentOS 6.4安装步骤...

    在centos下搭建 git+gitolite 安装和部署

    讲速了 在centos 下搭建git服务器 用gitolite 来管理权限 很经典 值得拥有

    Centos8 搭建日志服务器rsyslog+loganalyzer

    CentOS8 搭建日志服务器 rsyslog+loganalyzer CentOS 8 是一个流行的 Linux 发行版,rsyslog 是一个强大的日志服务器软件,loganalyzer 是一个基于 Web 的日志分析工具。本文将指导您如何在 CentOS 8 上搭建一个...

Global site tag (gtag.js) - Google Analytics