使用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 https://github.com/sitaramc/gitolite mkdir -p $HOME/bin gitolite/install -to $HOME/bin
注册仓库管理员
新建YourName.pub文件,将客户端公钥.ssh/id_rsa.pub复制到里面,然后注册为仓库管理员
vim YourName.pub # 复制客户端公钥内容,按:wq保存退出 $HOME/bin/gitolite setup -pk YourName.pub # 注册仓库管理员
也可以在服务器上新建admin用户作为仓库管理员,方便管理
# 新建管理员用户admin
sudo adduser admin # 生成SSH公钥
su admin
ssh-keygen -t rsa -C "youremail@example.com"
cp .ssh/id_rsa.pub /tmp/admin.pub # 切换回git用户,将admin用户注册为仓库管理员
su git
cd ~
$HOME/bin/gitolite setup -pk /tmp/admin.pub
注册管理员后会生成两个文件
projects.list,repositories/projects.list保存仓库信息列表repositories/文件夹里有管理员仓库gitolite-admin.git/和测试仓库testing.git/新建的仓库都会保存在
repositories/文件中
管理远程仓库
在已经注册过的客户端克隆管理员仓库
git clone git@host:gitolite-admin
管理员仓库里有两个文件
conf/gitolite.conf和keydir/gitolite.conf管理仓库信息keydir/保存git成员的公钥
添加新成员: 将新成员的公钥保存到
keydir/下新建仓库: 修改
conf/gitolite.conf文件,添加newrepo仓库repo gitolite-admin
RW+ = admin repo testing
RW+ = @all repo newrepo
RW+ = @all
添加仓库管理员
usernamerepo gitolite-admin
RW+ = admin
RW+ = username repo testing
RW+ = @all repo newrepo
RW+ = @all
将仓库信息推送到服务器
在客户端更新完仓库信息后,需要将其推送到服务器才能生效
git add .
git commit -m "commit message"
git push origin master
参考
使用gitolite搭建Git服务器的更多相关文章
- 使用gitolite进行git服务器搭建
使用gitolite进行git服务器搭建 https://blog.csdn.net/pan0755/article/details/78460941 使用gitolite搭建,然后需要有个客户端进行 ...
- Git学习笔记(10)——搭建Git服务器
本文主要记录了Git服务器的搭建,以及一些其他的配置,和最后的小总结. Git远程仓库服务器 其实远程仓库和本地仓库没啥不同,远程仓库只是每天24小时开机为大家服务,所以叫做服务器.我们完全可以把自己 ...
- 如何在服务器上搭建git服务器
参考文章: http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137583770 ...
- 自定义Git之搭建Git服务器
在远程仓库一节中,我们讲了远程仓库实际上和本地仓库没啥不同,纯粹为了7x24小时开机并交换大家的修改. GitHub就是一个免费托管开源代码的远程仓库.但是对于某些视源代码如生命的商业公司来说,既不想 ...
- 轻松搭建Git服务器(Ubuntu)
搭建Git服务器 在远程仓库节中,我们讲了远程仓库实际上和本地仓库没啥不同,纯粹为了7x24小时开机并交换大家的修改. GitHub就是一个免费托管开源代码的远程仓库.但是对于某些视源代码如生命的商业 ...
- CentOS搭建Git服务器及权限管理
声明:本教程,仅作为配置的记录,细节不展开,需要您有一点linux的命令基础,仅作为配置参考. 1. 系统环境 系统: Linux:CentOS 7.2 64位 由于CentOS已经内置了OpenSS ...
- 在Centos7下搭建Git服务器
① 安装 Git ② 服务器端创建 git 用户,用来管理 Git 服务,并为 git 用户设置密码 ③ 服务器端创建 Git 仓库 ④ 客户端 clone 远程仓库 ⑤ 客户端创建 SSH 公钥和私 ...
- Git -- 搭建git服务器
在远程仓库一节中,我们讲了远程仓库实际上和本地仓库没啥不同,纯粹为了7x24小时开机并交换大家的修改. GitHub就是一个免费托管开源代码的远程仓库.但是对于某些视源代码如生命的商业公司来说,既不想 ...
- Git_搭建Git服务器
在远程仓库一节中,我们讲了远程仓库实际上和本地仓库没啥不同,纯粹为了7x24小时开机并交换大家的修改. GitHub就是一个免费托管开源代码的远程仓库.但是对于某些视源代码如生命的商业公司来说,既不想 ...
随机推荐
- Java修炼——异常的概念以及处理方式(捕获异常)
异常概念分类 异常( Exception 也称例外)就是在程序的运行过程中 所发生的不正常的事件,它会中断正在运行的程序 所需文件找不到 网络连接不通或中断 算术运算错 (被零除-) ...
- BOM对象中的常用方法
先看body中的内容: <body οnlοad="demo1()"> <p> <input type="button" id=& ...
- BZOJ[HNOI2005]狡猾的商人(差分约束)
1202: [HNOI2005]狡猾的商人 Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 4969 Solved: 2496[Submit][Sta ...
- 洛谷 题解 P1736 【创意吃鱼法】
题目大意 给出一个 \(n \times m \ (1 \leq n, \ m \leq 2500)\) 的 \(01\) 矩阵,让你在其中找到一个最大的子矩阵使得该子矩阵除了一条对角线上的数字均为 ...
- 学习Java必看的Java书籍(高清中文最新版附下载链接)
今年下半年,我正式系统地学习Java(之前学习C++).最近把学习Java所用到的书籍整理了一下,分享出来,希望对正在学习或准备学习Java的人有一定的帮助. 关于Java的学习路线,和IDE工具In ...
- 详解numpy的argmax
从最简单的例子出发 假定现在有一个数组a = [3, 1, 2, 4, 6, 1]现在要算数组a中最大数的索引是多少.这个问题对于刚学编程的同学就能解决.最直接的思路,先假定第0个数最大,然后拿这个和 ...
- java面试题干货126-170
这部分主要是开源Java EE框架方面的内容,包括Hibernate.MyBatis.Spring.Spring MVC等,由于Struts 2已经是明日黄花,在这里就不讨论Struts 2的面试题, ...
- 深入解析http协议
当今web程序的开发技术真是百家争鸣,ASP.NET, PHP, JSP,Perl, AJAX 等等. 无论Web技术在未来如何发展,理解Web程序之间通信的基本协议相当重要, 因为它让我们理解了We ...
- Android utils 工具类之MD5加密 MD5Utils
实际开发过程中,密码不会保存明文形式,容易被别人窃取. MD5加密是不可逆的加密算法,只能由明文转换成密文. 但是有些人通过将明文对应的密文保存在数据库中,进行查询破解密文.为防止这种解密,根据许多对 ...
- React搭建项目(全家桶)
安装React脚手架: npm install -g create-react-app 创建项目: create-react-app app app:为该项目名称 或者跳过以上两步直接使用: npx ...