1. 程式人生 > >[Linux]通過使用者名稱和密碼的方式搭建Git伺服器(http&gitweb)

[Linux]通過使用者名稱和密碼的方式搭建Git伺服器(http&gitweb)

1、安裝依賴

yum -y install perl cpio autoconf tk zlib-devel libcurl-devel openssl-devel expat-devel

yum install perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker cpan

yum -y install epel-release

yum -y install fcgi-devel

yum install git

yum install git-core

yum install gitweb

Tips:首先確保已經安裝了apache2

2、配置

 1)、新增git使用者

useradd git

2)、配置訪問git的使用者名稱與密碼

#建立密碼檔案

htpasswd -m -c /home/git/git-team.htpasswd <使用者1>

#新增其他使用者

htpasswd -m /home/git/git-team.htpasswd <使用者2> 

3)配置apache的虛擬主機

<VirtualHost *:80>

   ServerAdmin [email protected]

   ServerName GitServer

   SetEnv GIT_PROJECT_ROOT /home/git

   SetEnv GIT_HTTP_EXPORT_ALL

   #安裝git-core後,用find命令查一下git-http-backend在哪裡

   ScriptAlias /git /usr/libexec/git-core/git-http-backend/

   Alias /gitweb /var/www/git

   #在檔案/etc/gitweb.conf末尾另起一行加上 $projectroot = "/home/git";

   SetEnv GITWEB_CONFIG /etc/gitweb.conf

   <Directory "/var/www/git">

      Options ExecCGI Indexes FollowSymLinks SymLinksIfOwnerMatch

      Order allow,deny

      Allow from all

      AllowOverride All

      Require all granted

      AddHandler cgi-script cgi

      DirectoryIndex gitweb.cgi

   </Directory>

   <Location />

      DAV on

      AuthType Basic

      AuthName "Git Access"

      AuthUserFile /home/git/git-team.htpasswd

      Require valid-user

   </Location>

</VirtualHost>

注意:確保apache開啟了env_module、dav_module、dav_fs_module、cgi_module、cgid_module、alias_module,否則肯能出現無法啟動apache或者顯示cgi原始碼的問題

3、測試

在/home/git 建立一個專案

git init --bare test.git

這之後給test.git賦許可權,如果有apache使用者,就把此資料夾的屬主設定為apache,當然也可以

chmod 777 -R test.git

1)基於git命令的測試

#檢出專案

 

#進入test資料夾後建立一個檔案(比如test.txt),然後測試提交

git add test.txt#新增到版本控制

git commit -m  "提交資訊"#提交到本地

git push -u  origin master#push到伺服器

2)基於web的測試

訪問http://GitServer/gitweb,輸入使用者名稱和密碼即可訪問

 

相關推薦

[Linux]通過使用者名稱密碼方式搭建Git伺服器http&gitweb

1、安裝依賴 yum -y install perl cpio autoconf tk zlib-devel libcurl-devel openssl-devel expat-devel yum install perl-ExtUtils-CBuilder

自定義Git ~ 忽略特殊檔案.gitignore、配置別名、搭建Git伺服器十八

在 安裝 Git 一節中,我們已經配置了使用者名稱 user.name 和 Email 地址 user.email,實際上,Git還有很多可配置項。比如,讓 Git 顯示顏色,會讓 輸出的命令 看起來更醒目,如下: 這樣,Git 會適當地顯示不同的顏色,比如 git status

Linux搭建屬於你自己的git伺服器MAC版

環境說明 本地mac系統,一般都有git程式安裝(如果沒有則使用:brew install git) 伺服器版本是ubuntu-14.04 直入主題 ​ 使用mac終端遠端連線linux伺服器(命令:ssh [伺服器ip], 之後輸入伺服器密碼)預設都是ro

Linux搭建FTP伺服器Ubuntu16.04

搞了下FTP伺服器,基本上能遇到的問題都遇到了-。-! 先說步驟: 1.安裝vsftpd軟體包 sudo apt-get install vsftpd 2.開啟配置檔案 vim /etc/vsftpd.conf 3.修改引數 一些引數可以去掉註釋啟用,為了方便,

Linux環境下搭建Apache伺服器完整版

Linux下搭建Apache伺服器(完整版) 什麼是Apache? Apache Licence是著名的非盈利開源組織Apache採用的協議。該協議和BSD類似,同樣鼓勵程式碼共享和尊重原作者的著作權,同樣允許程式碼修改,再發布(作為開源或商業軟體)。需要

搭建Git伺服器Ubuntu虛擬機器windows客戶端

         一直以來用Git都是用的別人的伺服器, 比如oschina 和github,  今天因為工作需要在自己的ubuntu上搭建了自己Git 伺服器, 以下記錄一些步驟和碰到的問題

centos6.5centos7如何搭建php環境包括php7

首先我們先檢視下centos的版本資訊: #適用於所有的linux lsb_release -a #或者 cat /etc/redhat-release #又或者 rpm -q centos-release 以上三種任意一種均可檢視centos的版本資訊。 這裡我們

《初入linux》--第二十一部分-利用squid搭建vpn伺服器免流伺服器初級入門

一.squid搭建簡單的vpn 正向代理       何為正向代理:簡單的解釋,我從主機A上想訪問伺服器C上的資源,但是因為種種原因(例如acl限制,防火牆,萬惡的GFW 5555555~~)A被限制了無法訪問C,此時,我們知道伺服器B是可以訪問C的,於是,我們先用A連線B

centos7搭建git伺服器多使用者版

建立倉庫並分享到組: git init --shared=group test 建立組: groupadd git 切換專案所屬組: chgrp -R git test 建立使用者1: useradd test1 -g git passwd test1 建立使用者2

團隊合作---使用Gitblit在Windows下搭建Git ServerHTTP

用過Git之後再使用Svn是很頭疼的事情 於是就讓向老大要了一塊Windows伺服器的地址空間,來搭建Git Server 一、下載Gitblit 二、下載完解壓 (1)解壓之後我的gitblit檔案的路徑: D:\gitblitserver\gitb

windows下搭建Git伺服器

以下兩篇文章是在安裝Git伺服器時借鑑的文章,不錯,轉載在此: 1、所需的軟體下載及安裝 所需工具下載地址: 若只要使用git,只需要安裝msysgit就行了。copssh是一個ssh伺服器軟體。 msysgit的安裝: 我把安裝中關鍵的幾步截圖說明,其餘直接點

搭建git伺服器在windows server

專案程式碼的分支管理一直是一個很頭疼的問題,因為使用的是svn。於是開始嘗試使用git。目前公共的git伺服器使用量比較廣泛就是github和碼雲。github私有庫是收費的,碼雲雖然不收費,但是使用者數量有限制。想著還是自己搭建一個git伺服器吧。搭建的環境是在window

搭建 Git 伺服器基於 CentOS 7

對於規模比較小的團隊,可以直接搭建 Git 伺服器,逐個收集研發同學的證書配置進來即可。如果團隊規模比較大,可以直接採用 GitLab、Drone 等現成的帶有許可權管理的 Git 服務。 伺服器端操作 安裝 Git 對於 CentOS,可以直

Ubuntu 14.04下搭建SVN伺服器SVN Server

為了學習SVN伺服器是怎麼搭建的,我在Ubuntu虛擬機器上搭建了一個SVN伺服器,可以作為專案開發的版本,記錄下來防止自己遺忘,同時可以幫助更多的人。 一:搭建環境 檢視Ubuntu系統的版本資訊:可用cat /proc/version命令、uname -a命令與s

idea中Git設定http/ssh方式

最近用IDEA上的git功能出現了可以commit但無法push和pull的問題,測試發現原因是Could not read fr

linux rsync 指定使用者名稱密碼方式同步

  rsync 客戶端 172.17.0.29 rsync 服務端 --daemon  方式執行 172.17.0.31 備份端 以下首先說明服務端的安裝情況: 1  檢查是否安裝rsync     rpm -qa

python網絡編程,通過服務名稱會話類型tcp,udp獲取端口號,簡單的異常處理

one span try num python網絡 int 代碼 sys.argv 通過 作為一個php程序員,同時有對網絡方面感興趣,php就比較蛋疼了,所以就抽了些時間看python 之前學python基礎因為工作原因,斷斷續續的看了個基礎,差不多是可以寫代碼了 最近在

linux 修改用戶名密碼

post news 需要 文件 dna roo 輸入 erl 用戶密碼 一、 修改用戶名 先用root登陸,然後依次修改以下文件中對應的用戶名信息: /etc/passwd 如: #註意修改路徑 /etc/shadow /etc/group /etc/gshadow 最後

物理服務器Linux下軟RAIDUUID方式掛載方法--Megacli64

其它 log ron 軟件 sas 通過命令 sequence bios 單獨 一、業務部門需求說明:公司最近來了一批服務器,用於大數據業務部署。數據節點服務器由14塊物理磁盤,其中有2塊是900G的盤,12塊是4T的盤。在服務器系統安裝時,進入系統的BIOS界面:1)將2

Linux用戶切換密碼修改

sudo root 普通 passwd root密碼 pre 修改密碼 linux 輸入 1、普通用戶切換到root su - 再輸入root密碼,密碼正確,成功切換,再輸入exit則切換回普通用戶 2、root切換到其他用戶,例user su - user