云网牛站
所在位置:首页 > Linux云服务器 > 在Ubuntu下安装Web在线版本管理系统Gitweb

在Ubuntu下安装Web在线版本管理系统Gitweb

2018-08-20 21:47:00作者:CodeSpace稿源:linux站

在Ubuntu操作系统环境中git服务端安装部署一个gitweb服务,并简单的进行测试。目前,要说最简单的网页版本管理系统就是gitweb了。下面就是gitweb最简单的安装和测试步骤。

 

安装gitweb的前提

(1)、服务器上已经安装git。参考在Ubuntu 18.04系统下安装和初次使用Git一文。

(2)、服务器上已经安装Apache,并配置好CGI可用。

(3)、本文在前面2个条件满足下,安装部署gitweb服务就非常简单了。

 

1.安装gitweb程序

系统终端中运行命令:

sudo apt-get install gitweb

安装完成后,会自动生成/etc/gitweb.conf和/etc/apache2/conf-available/gitweb.conf两个文件。

在Ubuntu下安装Web在线版本管理系统Gitweb

 

2.配置git服务端根目录

修改/etc/gitweb.conf 中的$projectroot 为:

$projectroot = "/home/git" ;

 

3.启动gitweb服务

重启Apache服务器:sudo service apache2 restart

 

4.测试

(1)、按照下面的《最简git服务器搭建步骤和自动化脚本》新建一个空的git仓库/home/git/hello.git,并推送一次。

(2)、在客户端输入:http://192.168.1.155/gitweb/ 即可看到新建的项目。

在Ubuntu下安装Web在线版本管理系统Gitweb

在Ubuntu下安装Web在线版本管理系统Gitweb

 

附:最简git服务器搭建步骤和自动化部署脚本

简介:

git是一个开源的版本管理软件,通过git可以方便地进行软件的协同开发、历史回溯等,下面是一个最简单的git服务器搭建和测试步骤,为了方便,后面还有一个一键自动化搭建的脚本。前提是对git有一定了解,并且已经安装好git。

一、最简git服务器搭建和测试

服务端搭建:

说明:搭建一个空的hello.git的远程仓库(ip:192.168.1.155)

1.添加git用户

sudo useradd -m git

sudo passwdgit

su git

2.进入/home/git并初始化空的仓库,结果如图1所示,创建了一个名为hello.git的代码仓库

cd /home/git

git init --bare hello.git

在Ubuntu下安装Web在线版本管理系统Gitweb

上图是hello.git代码仓库。

客户端测试:

说明:初始化一个本地仓库,然后推送到服务端

1].新建一个hello的目录,并写一段helloworld的代码

2].在hello目录下创建一个git仓库,并提交一次

git init

git add --all

git commit

3].添加远程代码仓库

git remote add origingit@192.168.1.155:/home/git/hello.git

4].推送master分支到远程,执行结果如图2所示,服务端多了一个master分支

git push origin master

在Ubuntu下安装Web在线版本管理系统Gitweb

上图是客户端测试流程。

5].到另外一个目录下克隆远程仓库

git clonegit@192.168.1.155:/home/git/hello.git

二、最简git服务器自动化搭建脚本

说明:创建git仓库并搭建一个空的hello.git的远程仓库(ip:192.168.1.155)

脚本源码:gitnew.sh:

#!/bin/sh

parmNum=$#

if [ $parmNum -eq 0 ];then

echo "Run as:"

echo "1.Create git account and repertory: ./gitnew.sh repertory"

echo "2.Create git account only: ./gitnew.sh null"

exit

fi

repertory=$1

echo "[$0]:Add git account:"

sudo useradd -m git

echo "[$0]:Passwd git account:"

sudo passwd git

if [ $repertory != "null" ];then

cd /home/git

repertory_git="$repertory.git"

echo "[$0]:Create $repertory_git"

sudo git init --bare $repertory_git

sudo chown -R git:git $repertory_git

cd -

fi

echo "[$0]:Enjoy"

运行结果:

脚本运行完成之后,如图3所示,创建好了一个hello.git的远程仓库,跟上面的一模一样。

在Ubuntu下安装Web在线版本管理系统Gitweb

上图是自动化脚本创建代码仓库。

三、解决客户端推送和克隆要输入服务端git登录密码的问题

1].在服务端/home/git目录下新建一个.ssh目录

mkdir .ssh

2].在.ssh目录下新建一个authorized_keys文件

touch authorized_keys

3].把客户端的ssh公钥写到authorized_keys文件中,一行一个

echo **** >>authorized_keys

 

相关主题

Ubuntu 18.04.1下安装Web在线版本管理系统Gitlab

精选文章
热门文章