使用gitolite搭建git服务器

2022-08-09 17:46:54 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

1:链接服务器 2:安装git

代码语言:javascript复制
yum install git

3:安装perl(perl在linux下可以理解为增强版本的shell,是一种脚本语言,具有程序结构,很多内建功能,也方便调用其它程序)在安装perl的同时,最好把 cpan 也同时安装一下。

代码语言:javascript复制
yum install perl
yum install cpan

4:安装openssh OpenSSH 是 SSH (Secure SHell) 协议的免费开源实现。SSH协议族可以用来进行远程控制, 或在计算机之间传送文件。而实现此功能的传统方式,如telnet(终端仿真协议)、 rcp ftp、 rlogin、rsh都是极为不安全的,并且会使用明文传送密码。

代码语言:javascript复制
yum install openssh

5:添加git、gitadmin用户 ,删除用户

代码语言:javascript复制
useradd git 

userdel -r gitadmin

6:添加用户的ssh登录密码

代码语言:javascript复制
passwd git 

7:查看所有用户

代码语言:javascript复制
cat /etc/passwd

大多都是系统自带的,而只有像root、git这样的以/bin/bash的,是可以使用ssh登录的

代码语言:javascript复制
cat  /etc/shadow

8:.在 gitadmin 用户下生成公钥私钥

代码语言:javascript复制
ssh-keygen

在当前目录ll -a 查看是否有.ssh文件 在.ssh文件里面有id_res和id_res.pub cp id_res.pub /root/id_res.pub

9:在 git 用户下安装 gitolite 在git用户的/home下面,执行

代码语言:javascript复制
git clone https://github.com/sitaramc/gitolite
mkdir -p $HOME/bin
gitolite/install -to $HOME/bin
ls

可以看到有两个目录bin,gitolite

10:设置管理员的私钥 在git用户下的/bin目录下,执行

代码语言:javascript复制
./gitolite setup -pk /root/res.pub

11:在git用户下会多出两个文件projects.list 、respositories: respositories文件是所有的仓库,这里在git用户下只是做配置; cd 到respositories目录下,我们查看一下目录下的东西:

12:切换到gitadmin用户下,clone git用户下的gitolote-admin.git

代码语言:javascript复制
git clone git@ip地址:gitolite-admin

gitadmin用户下已经存在了这个目录,然后查看一下这个目录,下面有两个文件, conf 仓库 keydir 这个文件是用来放置公钥的

13:本地生成公钥私钥,然后copy到gitadmin/gitolite-admin/keydir下,命令如下:

代码语言:javascript复制
scp id_rsa.pub root@ip地址:/home/gitadmin/gitolite-admin/keydir/local.pub

在gitolite-admin目录下面,执行、

代码语言:javascript复制
git status
git add *
git commit -m '公钥’ git push 

14:vim conf/gitolite.conf

其中几个仓库,是我随意添加的。添加以后,执行如下:

代码语言:javascript复制
git status
git add *
git commit -m '公钥’ git push 

15:git clone git@ip地址:仓库名“

16:success

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/105925.html原文链接:https://javaforall.cn

0 人点赞