このガイド用にgit.shadowircd.netリポジトリが作成されました。
最初に、aptitudeパッケージのいくつかをインストールします。
aptitude install git-core git-svn gitweb
gitwebおよびdavバージョンのgitリポジトリでサイトを保存するフォルダーを作成します。
mkdir -p /www/git.domain.tld/{htdocs,logs} /www/git.domain.tld/htdocs/git
必要なApache2 modをアクティブにします。
a2enmod dav
a2enmod dav_fs
a2enmodの書き換え
a2enmod env
gitweb設定ファイルを作成します:
mcedit /www/git.domain.tld/gitweb.conf
私にとってはこのように見えます:
$ my_uri =“ http://git.domain.tld”; #リポジトリアドレス
$ site_name =“ git.domain.tld”; #タイトルに表示されるサイト名
$ projectroot =“ /www/git.domain.tld/htdocs/git/”; #ハードドライブ上のgitリポジトリへのパス
$ git_temp =“ / tmp”;
$ home_link = $ my_uri; #「ホームページ」へのリンク
#$ home_text =“ indextext.html”; #text、コメントを外して貼り付けることができます
$ projects_list = $ projectroot;
$ stylesheet =“ /gitweb/gitweb.css”;
$ logo =“ /gitweb/git-logo.png”;
$ favicon =“ /gitweb/git-favicon.png”;
$ projects_list_description_width = 40;
$ feature {'pathinfo'} {'default'} = [1];
それでは、apache2のvhostに進みましょう。ここには、最も興味深い部分が含まれています。
<VirtualHost *:80>
ServerName git.domain.tld
ServerAlias www.git.domain.tld
ServerAdmin head@coderscamp.ru
DocumentRoot /www/git.domain.tld/htdocs
ScriptAlias / cgi-bin / / usr / lib / cgi-bin /
DirectoryIndex /cgi-bin/gitweb.cgi
Rewriteengine on
RewriteRule ^ /([a-zA-Z0-9 _ \-] + \ / \。Git)/?(\ ?. *)?$ /Cgi-bin/gitweb.cgi/$1 [L、PT]
SetEnv GITWEB_CONFIG /www/git.domain.tld/gitweb.conf
エイリアス/ gitweb / usr / share / gitweb /
<ディレクトリ/www/git.domain.tld/htdocs>
オプションFollowSymLinks
AllowOverrideなし
注文許可、拒否
すべてから許可する
</ Directory>
<場所/ git>
DAVオン
AuthType Basic
AuthName "Git"
AuthUserFile /www/git.domain.tld/passwd.git
<Limit HEAD PROPFIND OPTIONS REPORTを除く>
有効なユーザーが必要
</ LimitExcept>
</場所>
ログレベル警告
ErrorLog /www/git.domain.tld/logs/error.log
CustomLog /www/git.domain.tld/logs/access.logの組み合わせ
</ VirtualHost>
新しいユーザーを追加するだけです。
htpasswd -cm /www/git.domain.tld/passwd.git user
/www/git.domain.tld/htdocs/git/にリポジトリを作成し、最も快適なバージョン管理システムをお楽しみください:)
PSでgitを使用する場合のWindowsユーザー向け、自動挿入CRLF改行の無効化に関するヒントhabrahabr.ru/blogs/development/43808が役立ちます
PPS for Linuxユーザー-このサーバーはDAVを使用して動作します。プッシュに問題がある可能性があります。次のコンテンツマシンで〜/ .netrcファイルを作成できますgit.domain.tld login <user> password <password>