Gitでプログラムを管理したいときには、GitHubとかを使う方法やさくらインターネットのレンタルサーバやVPSを使う方法もあるんですが、色々デメリットもあるので自宅のサーバに立てることにしました。
Apacheをインストール

インストール先は「C:\Apache24」にしました。インストール・設定の方法は色々他のサイトがあるので参考になると思います。
Git for Windowsをインストール

インストール方法は色々なサイトに情報があるから参考に。気を付けるべきポイントは改行周りの設定かなあ…
ベーシック認証のためにユーザー名とパスワードを作成
コマンドプロンプトでパスワードファイルを作ります。コマンド的にはインストール先が「C:\Apache24」の場合以下のような感じ。
C:\Apache24\bin\htpasswd.exe -cbB D:\gitrepo\.htpasswd username password
書式は、新規作成する場合「[パス+htpasswd.exe] -cbB [パスワードファイル名] [ユーザー名] [パスワード]」です。
ユーザーを追加するときには、スイッチ「-cbB」を「-bB」にします。
httpd.confに設定追加
「C:\Apache24\conf\httpd.conf」に次の行を追加します。
何をしているかというと、環境変数を指定して、「git-http-backend.exe」を「/git/」でCGIとして動作するようにしているのと、あと「/git」にベーシック認証をかけてます。
# ---------------------------------------------------------- #
# Gitの設定
SetEnv GIT_PROJECT_ROOT "D:/gitrepo"
SetEnv GIT_HTTP_EXPORT_ALL 1
ScriptAlias /git/ "C:/Program Files/Git/mingw64/libexec/git-core/git-http-backend.exe/"
<Directory "C:/Program Files/Git/mingw64/libexec/git-core/">
Options +ExecCGI
Allow From All
Require all granted
</Directory>
<locationMatch "/git">
AuthType Basic
AuthName "Git"
AuthUserFile D:/gitrepo/.htpasswd
require valid-user
Order allow,deny
Allow from all
</locationMatch>リポジトリを置くフォルダは「D:\gitrepo」で、先ほど作ったフパスワードファイルは「D:/gitrepo/.htpasswd」においてあります。
一部サイトでは情報が古いので、ファイル「git-http-backend.exe」へのパスが間違っているので注意。
テストリポジトリ作成
リポジトリを置くフォルダ(D:\gitrepo)に移動して右クリック→「Git GUI Here」でGitGUIを起動し、「test」というテストリポジトリを作ります。
動作確認
まず、ブラウザでhttp://127.0.0.1/git/」とかにアクセスして、ベーシック認証が動作するか確認します。

認証が通れば「Not Found」と表示されるはずです。
次に、先ほど作った/test/フォルダにアクセスします。

「http://127.0.0.1/git/test/」ですね。Chromeで見た時に「ERR_INVALID_RESPONSE」が帰ってきてれば成功です。
クライアント側をセットアップ
クライアント側には、windowsの場合、「Git for Windows」と「TortoiseGit」をインストールすると使いやすいと思います。
それ以外にも、Gitビュアーがたくさんあるので、こっちのページ(Git GUI Clients)で探すと作業が捗ると思います。
