Windowsマシンを社内gitサーバにする

  • 35
    Like
  • 0
    Comment
More than 1 year has passed since last update.

説明

以前書いた
Windows8マシンを社内gitサーバにする
の増補追記版です。

Windows7上にも構築したので、対象を広げWindowsマシン全般としました。

追記:
「JCE管轄ポリシーファイル(無制限強度)のインストール」を追記しました。

はじめに

無料で、10〜20人程度が使う、社内プライベートなgitサーバが必要でした。

ソフトウェアは、調査検討した結果「Gitblit」に落ち着きました。
(2014/12現在では、GitBucketも良さそうですね)

1年間以上運用していますがトラブルなく使用できています。

Gitblitのインストールは実はとても簡単です。
ポート番号指定して実行するだけ。

サービス化もすぐにできました。

JREのインストール

バージョン7以降が必須です。
こちらからダウンロードしインストールします。

https://java.com/ja/download/

32bit版と64bit版があることに気を付けましょう。
動かしているOSのbit数に合わせます。

JCE管轄ポリシーファイル(無制限強度)のインストール

暗号強度のポリシーファイルを更新します。

http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html

こちらからダウンロードしたファイルをインストールします。

デフォルトであれば以下のパスです。
Program Files/Java/jre[バージョン]/lib/security/

local_policy.jar
US_export_policy.jar

上記のファイルを(必要であれば退避し)上書きしてください。

Gitblit GO のダウンロードとインストール

こちらより「Gitblit GO」をダウンロードします。

http://gitblit.com/

展開してC:¥直下にgitblitフォルダを配置。
(ここ以外に配置する場合、パスにスペースが無い方が良いようです)

data/gitblit.propertiesの編集

propertiesファイルを2行編集します。

gitblit.properties
(前後略)
server.httpPort 任意のポート:(例) 8050
(中略)
server.storePassword 任意のパスワード

gitblit.cmd実行

コマンドラインよりgitblit.cmdを実行します。
開始をしばし待ちましょう。

ブラウザで動作確認

http://localhost:8050 (例)

Gitblitの画面が表示されたら成功です。
admin / adminでログインしてください。

そこまで確認できたら、コマンドプロンプトを閉じ、一度終了させておきます。

サービス化

サービス化しWindowsを再起動しても自動で立ち上がるようにします。

installService.cmd内容確認と実行

ARCH、StartParamsの内容を確認・変更します。

SET ARCH=amd64
32bitの場合、amd64をx86に変更

--StartParams="--storePassword;
パスワード値を変更します。初期値はgitblitになっていると思います。

installService.cmd
@REM Install Gitblit as a Windows service.

@REM gitblitw.exe (prunmgr.exe) is a GUI application for monitoring 
@REM and configuring the Gitblit procrun service.
@REM
@REM By default this tool launches the service properties dialog
@REM but it also has some other very useful functionality.
@REM
@REM http://commons.apache.org/daemon/procrun.html

@REM arch = x86, amd64, or ia32
SET ARCH=amd64

@REM Be careful not to introduce trailing whitespace after the ^ characters.
@REM Use ; or # to separate values in the --StartParams parameter.
"%CD%\%ARCH%\gitblit.exe"  //IS//gitblit ^
         --DisplayName="gitblit" ^
         --Description="a pure Java Git solution" ^
         --Startup=auto ^
         --LogPath="%CD%\logs" ^
         --LogLevel=INFO ^
         --LogPrefix=gitblit ^
         --StdOutput=auto ^
         --StdError=auto ^
         --StartPath="%CD%" ^
         --StartClass=org.moxie.MxLauncher ^
         --StartMethod=main ^
         --StartParams="--storePassword;上記で入力した任意のパスワード;--baseFolder;%CD%\data" ^
         --StartMode=jvm ^
         --StopPath="%CD%" ^
         --StopClass=org.moxie.MxLauncher ^
         --StopMethod=main ^
         --StopParams="--stop;--baseFolder;%CD%\data" ^
         --StopMode=jvm ^
         --Classpath="%CD%\gitblit.jar" ^
         --Jvm=auto ^
         --JvmMx=1024

コマンドラインよりinstallService.cmdを実行します。

サービス一覧より確認すると
gitblitのサービスが追加されています。

サービス一覧で「自動」で開始するよう設定しましょう。

再度、ブラウザで動作確認

http://localhost:8050 (例)

Gitblitの画面が表示されたら成功です。

他のマシンからブラウザで動作確認

http://WindowsマシンのIPアドレス:8050 (例)

うおお!
Gitblitの画面が表示されたら大成功です。

サービス化に失敗する場合

Gitblitフォルダのgitblitw.exeを実行し「Startup」タブの
Aruguments:内容を確認します。

このstorePasswordの値が、自分が入力した値になっているでしょうか。

おわりに

Windowsでgitをホストしたい場合の参考になりましたら幸いです。