小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

玩轉(zhuǎn)Linux(2)——搭建GitWeb

 印度阿三17 2020-03-05

前言

GitWeb 和GitLab相比,一個(gè)是簡(jiǎn)單的倉(cāng)庫(kù)查看器,一個(gè)是復(fù)雜的Git管理系統(tǒng)。
之所以不安裝GitLab而選擇安裝GitWeb的原因有以下:
1、GitLab對(duì)配置要求很高
GitLab是基于ruby的,此外還使用了Postgresql、redis等,啟動(dòng)的worker process很多,官方推薦至少需要2核4G。
2、不需要特別多人,沒(méi)有復(fù)雜的權(quán)限控制要求
基本是一個(gè)“私服”,用來(lái)與Jenkins配合實(shí)現(xiàn)自動(dòng)集成,未來(lái)可能會(huì)有別人用,但也不會(huì)有多少人。
如果有人可以直接通過(guò)ssh添加公鑰的方式。
因此如果搭建GitLab是殺雞用牛刀。不選擇gogs、gitea的原因也是如此。

所以選擇了GitWeb(其實(shí)搭建GitWeb是更麻煩的)。

搭建過(guò)程

雖然沒(méi)有復(fù)雜的權(quán)限控制要求,但是還是要做登錄,因?yàn)榉?wù)器內(nèi)其他應(yīng)用都是通過(guò)nginx轉(zhuǎn)發(fā)的,所以決定Git web也使用Nginx轉(zhuǎn)發(fā)。

1、安裝gitweb和用到的配置軟件

sudo apt-get -y install gitweb spawn-fcgi  autoconf pkg-config libfcgi-dev

2、安裝fastcgi-wrapper

git clone https://github.com/gnosek/fcgiwrap.git
cd fcgiwrap/
autoreconf -i
./configure
make CFLAGS='-Wno-implicit-fallthrough'
sudo make install

3、啟動(dòng)

sudo spawn-fcgi -f /usr/local/sbin/fcgiwrap -p 12345

4、配置GitWeb

sudo vim /etc/gitweb.conf

# git倉(cāng)庫(kù)存放的目錄
# path to git projects (<project>.git)
$projectroot = "/home/git/repositories/";

# directory to use for temp files
$git_temp = "/tmp";

# target of the home link on top of all pages
#$home_link = $my_uri || "/";

# html text to include at home page
#$home_text = "indextext.html";

# file with project list; by default, simply scan the projectroot dir.
# 如果不指定projects.list的話,gitweb會(huì)自動(dòng)在$projectroot定義的目錄下遞歸查找合法的git repo來(lái)顯示。
$projects_list = "/home/git/projects.list";
# $strict_export參數(shù)規(guī)定只有顯示在首頁(yè)上的repo才能夠被訪問(wèn)。換句話說(shuō)在有projects.list的情況下,該文件列出的repo才能被訪問(wèn)。
$strict_export = 1;

# stylesheet to use
#@stylesheets = ("static/gitweb.css");

# javascript code for gitweb
$javascript = "static/gitweb.js";

# logo to use
$logo = "static/git-logo.png";

# the 'favicon'
#$favicon = "static/git-favicon.png";

# git-diff-tree(1) options to use for generated patches
#@diff_opts = ("-M");
@diff_opts = ();

# $feature數(shù)組啟用了一些插件或者說(shuō)特性。blame可以顯示代碼來(lái)源人,snapshot提供repo的打包下載,highlight提供代碼高亮。
$feature {'blame'}{'default'} = [1];
$feature {'blame'}{'override'} = 1;

$feature {'snapshot'}{'default'} = ['zip', 'tgz'];
$feature {'snapshot'}{'override'} = 1;

$feature{'highlight'}{'default'} = [1];

5、配置Nginx
鏈接gitweb文件

sudo ln -s /usr/share/gitweb/ /var/www/
# GitWeb
server {
        listen 80;

        server_name hostname; # 如,建議使用二級(jí)域名,如gitweb.

        root /var/www/gitweb/;

        rewrite ^/$ http://$host$1/index.cgi permanent;

        location ~ ^.*\.cgi$ {
            root /var/www/gitweb/;
            fastcgi_pass  127.0.0.1:12345;
            fastcgi_index index.cgi;
            include fastcgi.conf;
        }

        # access log file 訪問(wèn)日志
        access_log logs/gitweb.access.log;
}

6、瀏覽器訪問(wèn)你的hostname,如http://gitweb./
在這里插入圖片描述

7、將一個(gè)之前建好的倉(cāng)庫(kù)添加到projects.list
未添加的倉(cāng)庫(kù)是顯示不出來(lái)的(通過(guò)這個(gè)可以控制你想公開的倉(cāng)庫(kù))

echo "test.git" >> projects.list

8、樣式不好看,修改一下:

git clone https://github.com/kogakure/gitweb-theme.git
cd gitweb-theme
sudo ./setup -vi --insstall
sudo service nginx restart

在這里插入圖片描述

9、設(shè)置登錄認(rèn)證


sudo htpasswd -c /etc/nginx/gitweb.passwd name

在nginx配置中添加
auth_basic "請(qǐng)先登錄";
auth_basic_user_file /etc/nginx/gitweb.passwd;

進(jìn)入網(wǎng)站提示:
在這里插入圖片描述

到這里就都搭建完成了~

附:GitWeb倉(cāng)庫(kù)配置(在具體的倉(cāng)庫(kù)中)

1、description 中可以設(shè)置倉(cāng)庫(kù)的描述
2、cloneurl 顯示該倉(cāng)庫(kù)的克隆路徑
3、README.html來(lái)創(chuàng)建你的倉(cāng)庫(kù)內(nèi)容描述
4、config中可以設(shè)置owner = Your Name

http:///apps/trac/sourceforge/wiki/GitWeb repository browser

Create a “description” file in your git repository root, with a brief, one-line description of your repository. This file is treated as plain text, > > any HTML will be escaped. This will appear in the top section of the gitweb repository landing page.
Create a “cloneurl” file in your git repository root, containing one url per line. Use this to display the clone url for your repository. This will > appear in the same section as the description line, one url per line.
Create a “README.html” file in your git repository root, with arbitrary descriptive content. HTML is allowed, and will be displayed inside a > div tag on the gitweb page, in a section below the one with description.
Set the owner, by setting a gitweb.owner configuration variable in the “config” file, located in your git repository root. If the “gitweb” section does not exist, create it. The owner setting in the config should look like the sample below (you can use any arbitrary string for owner):
[gitweb]
owner = Your Name

來(lái)源:https://www./content-3-649901.html

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多