微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Ubuntu14.04环境中搭建属于自己的Git服务器


最近要开始源码环境搭建了。没有现成的环境只好自己搭建了。基于Ubuntu14.04搭建。理论上通用其他版本的Ubuntu。后续在整理一遍关于Git服务器下搭建Android源码版本管理。
在这里git版本管理的好处就不过多介绍了。可以自行百度。这里就更细致的讲解一下搭建的流程。方便大家更快速的搭建属于自己的Git版本管理服务器。配置完成后Ubuntu登陆界面会多一个git用户登录。觉得碍眼的话可以参考我的前一篇文章Ubuntu14.10登录界面隐藏其他用户登录窗口。话不多说,开始我们的搭建之旅。
一、创建Git用户
1、安装git-core、Python-setuptools、openssh-server、openssh-client(python-setuptools主要用于安装gitosis。后两个软件主要是为了方便使用Putty直接登录到服务器)

sudo apt-get install git-core python-setuptools openssh-server openssh-client

2、创建git用户并初git用户的始化密码

sudo useradd -m git
sudo passwd git

3、建立git用户使用的目录

 
 
  • 1
sudo mkdir /home/repo sudo chown git:git /home/repo

二、安装Gitosis软件。
1、安装Gitosis(为了统一管理,下边我会把几个重要的文件放在我建立的Tools目录中进行安装配置。)

 
 
  • 1
mkdir Tools cd Tools git clone git://eagain.net/gitosis (如果克隆失败用下面的地址) git clone https://github.com/res0nat0r/gitosis.git cd gitosis/ sudo python setup.py install (切换到git用户) su git (软链接目录) ln -s /home/repo /home/git/repositories

2、生成管理员ssh公钥 ,并拷贝到服务器。
在这里我是直接使用的服务器作为管理员,使用其他服务器原理一样)

 
 
  • 1
ssh-keygen -t rsa (直接回车即可) cp /home/XXX/.ssh/id_rsa.pub /tmp (尽量使用git用户拷贝,防止下一步初始化时读取不了公钥。)

其他用户作为管理员可以直接用优盘拷贝公钥到服务器或者直接通过命令拷贝

scp .ssh/id_rsa.pub git@<ServerIP>:/tmp
(此方法直接是使用的git用户拷贝。ServerIP为你的Git服务器ip。)
(如:scp .ssh/id_rsa.pub git@192.168.1.102:/tmp

3、初始化Gitosis,让你的管理员公钥生效(在Git服务器上进行)。

sudo -H -u git gitosis-init < /tmp/id_rsa.pub

三、配置Gitosis、建立第一个属于自己的Git版本库。
1、使用管理员机器克隆Gitosis配置库(前边上传的谁的公钥谁就是管理员,后续也可以添加。)

 
 
  • 1
  • 1
git clone git@localhost:gitosis-admin.git

2、服务器中建立“test.git”版本库
(GIt版本库统一在/home/git/repositories目录下,文件夹一定要以“.git”结尾

(切换到git用户)
su git 
(建立版本库“test.git”)
cd ~/repositories
mkdir test.git
(初始化test.git版本库)
cd test.git
git init --bare

3、管理员机器中配置“test.git”版本库。

cd gitosis-admin/
(gitosis.conf配置文件、keydir为公钥文件夹)
vim gitosis.conf

配置完毕提交配置信息
(公钥的命令一定要和公钥的名字一样,如下:后边的就是你的公钥名字,此时公钥的命名就为XXX.pub)

git add gitosis.conf
 git commit -am "添加“test.git”版本库。"

第一次提交会让你填写你的身份

git config --global user.email "你的邮箱@XXX.com"
 git config --global user.name "你的名字"
 (再次填写commit信息)
 git commit -am "添加“test.git”版本库。"
 git push origin master

四、测试一个属于自己的Git版本库。

1git clone git@localhost:test.git
 cd test
 echo "HelloWorld" > HelloWorld
 git add HelloWorld
 git commit -am "第一个提交记录"
 git push origin master

参考文章ubuntu上配置git服务器关于Git的读写权限配置可以参考此文章


转载地址:http://blog.csdn.net/u012588561/article/details/52578676

原文地址:https://www.jb51.cc/ubuntu/352095.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐