WindowsのGitサーバ(リモートリポジトリ)構築メモ

Windows7にリモートリポジトリ用のGitサーバを構築したのでそのメモ。
利用したのは、Gitの公式ツールGit for Windows

手順としては、
1. Git for Windowsのインストール
2. sshd用アカウントの作成
3. sshdの起動
4. git daemonの起動
5. リモートリポジトリの作成

1. Git for Windowsのインストール

Git for WindowsをDLして、インストール。特に困ることはないと思うのでそのままインストール。
改行コートの指定などは各環境に合わせて適当に。

2. sshd用アカウントの作成

Windows用のsshdは、Microsoftの公式OpenSSHのライブラリの中にもありますが、微妙にパス解決のやり方が違うのかそのままだとリポジトリがない的なエラーが出ます。ということで、Git公式ツールの中にもssh関連のライブラリが同梱されているのでそのsshdを利用。
公式Gitツールのsshdとの違いは下記の通り。
内容 Git公式 MS公式
sshdアカウント 必要 不要
起動シェル MINGW64 標準コマンドライン
起動方法 フルパス指定 管理者権限で(psexecが便利)

Git公式のsshdはsshdアカウントが必要なのでコンパネから標準ユーザで作成。
コントロール パネル\ユーザー アカウント\アカウントの管理\新しいアカウントの作成

3. sshdの起動

まず、sshd用に各種hostキーを作成。
$ ssh-keygen.exe -t rsa -f ssh_host_rsa_key
$ ssh-keygen.exe -t dsa -f ssh_host_dsa_key
$ ssh-keygen.exe -t ecdsa -f ssh_host_ecdsa_key
$ ssh-keygen.exe -t ed25519 -f ssh_host_ed25519_key
で、作成したキーはGitをインストールした/etc/sshに保存する。
例えば、C:\Program Files\Git\etc\ssh とか。

コピー後、MINGW64を立ち上げ(エクスプローラの適当なフォルダを右クリップでGit Bash Hereを選択)フルパスで起動。

sshdの起動はフルパスでないと怒られるのでフルパスで起動。
user01@PC01 MINGW64 /
$ /usr/bin/sshd.exe
タスクマネージャで確認。

4. git daemonの起動

同じく、MINGW64からgitコマンドで起動
user01@PC01 MINGW64 /c/a_git_repo
$ git daemon --verbose --reuseaddr --export-all --enable=receive-pack --enable=upload-pack --base-path=/c/a_git_repo
[7736] Ready to rumble

5. リモートリポジトリの作成

下記の様なスクリプトを作成しておくと便利。
#!/bin/sh

REPO=test01.git

rm -fr $REPO
mkdir $REPO
touch $REPO/git-daemon-export-ok

cd $REPO
git init --bare --share


複数のGitクライアントとのやり取りは下記に続く

[続きを見る]

カテゴリ

Amazon

アクセスランキング

[ジャンルランキング]
コンピュータ
249位
アクセスランキングを見る>>

[サブジャンルランキング]
プログラミング
38位
アクセスランキングを見る>>

RSSリンクの表示

ブロとも申請フォーム

Copyright © nopgm