Ubuntu下安装git服务器

原创 2017年01月03日 00:38:04

为自己配置之后的简要记录,大差不差,如需参考请注意有坑,概不负责大笑

1.安装 git-core, openssh-server, openssh-client

gw@ubuntu:~$sudo apt-get install git-core openssh-server openssh-client
如果无法安装更新软件源
2.添加 git 用户
gw@ubuntu:~$sudo useradd -m git #-m将在/home目录下生成git用户主目录git
gw@ubuntu:~$sudo passwd git
3.建立一个git仓库的存储点
gw@ubuntu:~$sudo mkdir /home/gits
gw@ubuntu:~$sudo chown git:git /home/gits
gw@ubuntu:~$sudo chmod 755 /home/gits
4.安装git用户管理软件 gitosis
先配置gw用户git信息
gw@ubuntu:~$git config --global user.name "kuikuitage"
gw@ubuntu:~$git config --global user.email "kuikuitage@163.com"
然后安装python工具
gw@ubuntu:~$sudo apt-get install python-setuptools
下载gitosis源码到某个目录,直接下载到了gw用户主目录
gw@ubuntu:~$git clone https://github.com/res0nat0r/gitosis.git
gw@ubuntu:~$cd gitosis && sudo python setup.py install
完成gitosis安装,默认gitosis把仓库放在/home/git/repositories下
所以做一个软链接
切换到git用户来操作/home/gits目录
gw@ubuntu:~$su git
$ln -s /home/gits  /home/git/repositories
$exit
5.将gw用户添加为第一个管理员
gw@ubuntu:~$ssh-keygen -t rsa#将在/home/gw/.ssh下生成一个id_rsa.pub文件
gw@ubuntu:~$sudo -H -u git gitosis-init< ~/.ssh/id_rsa.pub
Initialized empty Git repository in /home/gits/gitosis-admin.git/
Reinitialized existing Git repository in /home/gits/gitosis-admin.git/
至此就在/home/gits目录下生成了一个gitosis-admin.git的git账号权限管理仓库
并且将gw用作为第一个管理员加入到gitosis-admin.git仓库中的配置文件中了。
同过git仓库来管理用户权限配置文件,先为post-update添加权限
gw@ubuntu:~$sudo passwd root
gw@ubuntu:~$su
root@ubuntu:/home/gw#sudo chmod 755 /home/gits/gitosis-admin.git/hooks/post-update 

6.gw用户下clone用户权限配置仓库
gw@ubuntu:~$git clone git@192.168.101.105:gitosis-admin.git
在克隆下来的gitosis-admin目录下有一个目录和一个文件
gitosis.conf  keydir
gitosis.conf用来配置用户信息,keydir目录用来存放用户的公钥
注意gitosis-admin仓库是用来管理用户权限的,该仓库做了修改必须要add commit到服务器才会生效。

7.具体配置
在一个开发机生成公钥后将公钥上传到服务器
如:在WIN7下git生成的一个公钥文件id_rsa.pub的添加
打开该id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC6FwLSW45VGHKaQ4XhJuZer4/2wae/2/EL+j17DV0iTeq/EX1Ozr+4X5M2+n/wFq3JyGBIhZfpg1cBEFRLXQGloxMMwZU+haPDEFAlAvwFXXKkTajuePx8QAZIx36eo4uAfymMpykT1k38PBOXs12xVP6U4EFcuQQduLPFQo3YT2vOi3m2t76iPP6GcmeCP/n0RgkVjeLqrjf/FS8z9dDVW/K5qFxpFyCa6hcwxurUvd3vlkdj3uphXGx/h19iHMtgvNmqp0+A0yKPrrlHYMHF5lHktlewyD2iMTypq0YJ6OX+/p1FjMcmifeWLmiKj4sS476ug4NodTRwqu0CeAxb Administrator@USER-20160224RJ
查看开发机生成的用户名为Administrator@USER-20160224RJ
将该文件修改为Administrator@USER-20160224RJ.pub拷贝到gw用户clone下来的gitosis-admin目录的keydir目录下

打开gw用户clone下来的gitosis-admin目录的gitosis.conf文件
[gitosis]
  
[group gitosis-admin]
members = gw@ubuntu
writable = gitosis-admin
 
修改为
[gitosis]
  
[group gitosis-admin]
members = gw@ubuntu Administrator@USER-20160224RJ
writable = gitosis-admin
表示gitosis的管理用户组中成员有gw@ubuntu即当前用户gw,管理的仓库包括gitosis-admin
即列出的两个用户可以作为管理员可以操作writable权限列出的仓库。

gitosis以这种方式,为不同的用户分配不同的读写权限来管理仓库

将Administrator@USER-20160224RJ添加后需要上传到服务器。即将gw用户的gitosis-admin刚才做的修改同步到服务器git用户下gitosis-admin仓库
gw@ubuntu:~/git/gitosis-admin$git add .
gw@ubuntu:~/git/gitosis-admin$git commit -m "add Administrator@USER-20160224RJ"
gw@ubuntu:~/git/gitosis-admin$git push origin master
至此新的管理员添加完毕
8.在WIN7下获取gitosis-admin仓库
Administrator@USER-20160224RJ /g/gittest$ git clone git@192.168.101.105:gitosis-admin.git
版权声明:本文为原创或转载文章,未经博主允许不得转载。

ubuntu 完整安装git服务器

  • 2017年03月28日 10:49
  • 35KB
  • 下载

Ubuntu Git服务器搭建及Gitosis安装设置

1、安装 openssh服务器 sudo apt-get install openssh-server openssh-client 2、创建个人公钥和私钥 在默认用户的主目录路径下,运行以下命令,...

Ubuntu 11.10 server 安装Git 服务器

因为后面要采用Git代替Subversion,花了点时间配置了Git服务端和客户端,像以前一样,仍然基于最新的Ubuntu11.10 server/desktop系统。感谢这几篇文章的作者:http:...

Ubuntu安装git服务器

Ubuntu安装git服务器 fulinux 开发环境 Ubuntu 13.10 代码服务器 git 1、安装git...
  • sonbai
  • sonbai
  • 2014年03月24日 21:44
  • 2971

ubuntu12.04 git服务器的搭建

  • 2015年11月11日 14:28
  • 32KB
  • 下载

ubuntu完美搭建git服务器-完善版

最近公司项目需要用到Git来管理项目,正好逢周末花了点时间在虚拟机的unbuntu系统中搭建了下git的服务器,由于搭建过程中多多少少遇到了一些小问题,再因为个人记性不太好,所以在这里记录下来,以备不...
  • dddxxxx
  • dddxxxx
  • 2015年10月11日 18:22
  • 5780

ubuntu完美搭建git服务器

最近公司项目需要用到Git来管理项目,正好逢周末花了点时间在虚拟机的unbuntu系统中搭建了下git的服务器,由于搭建过程中多多少少遇到了一些小问题,再因为个人记性不太好,所以在这里记录下来,以备不...

Ubuntu16.04最快捷搭建小型局域网Git服务器

那么在linux上面管理文档、程序、源码等文件最好的就是Git了,而且Git是分布式,不必与中心服务器通讯即可管理本地版本。然而,对于一个协同工作的小型团队来说,仅靠本地版本管理是严重不够的,必须通过...

ubuntu下的git服务器禁止用户shell登录

ubuntu下的git服务器禁止用户shell登录(1)禁止的原因为了进行团队项目开发,我们经常会使用分布式版本管理系统,其中git是现今最为重要和常用的分布式管理系统。 著名的gitHub是在git...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Ubuntu下安装git服务器
举报原因:
原因补充:

(最多只允许输入30个字)