DCPAM の Git リポジトリを使用するためのローカル側のセットアップ

履歴

  • 2015-03-29 高橋芳幸 更新
  • 2015-03-15 高橋芳幸(https://www.gfd-dennou.org/arch/ruby/products/gphys/develop/git_repo_setup.htm を基に新規作成)

注意

DCPAM の Git リポジトリでは文字コードの制限をしているため, 下に説明しているフックを設定しておくことを勧めます.

概要

共有リポジトリの場所

共有リポジトリは

dennou-k:/GFD_Dennou_Club/ftp/library/dcpam/git_repos/dcpam.git
http://www.gfd-dennou.org/library/dcpam/git_repos/dcpam.git/

とする.

リポジトリのルール

現在の DCPAM の共有リポジトリは次のルールを課しています.

  • commit メッセージの文字コードは UTF-8 とする.
  • push するファイルの文字コードは UTF-8 とする.

基本ユーザ情報の設定 (git を使い始める際に一度やれば良い)

at 手元の計算機.

Git の確認 (あまり意味はないが)

> git --version
git version 1.7.10.4

ユーザ情報の設定

> git config --global user.name xxx
> git config --global user.email "xxx _AT_ mail.address"

Git の出力に色を付ける (らしい)

> git config --global color.ui auto

使用するエディタの設定

> git config --global core.editor "emacs -nw -q -l ~/.emacs-utf8"

日本語ファイル名を使えるようにする (らしい)

> git config --global core.quotepath off

ページャの設定 (less が良いらしい. その他の場合には log が文字化けしたりする.)

> git config --global core.pager less

手元にクローンを作成

at 手元の計算機.

手元にクローンを作成

ローカルの適当なディレクトリ (git_repos とする) に clone を作成.

電脳サーバにアカウントのあるユーザの場合.

> mkdir git_repos
> cd git_repos
> git clone -v dennou-k.gfd-dennou.org:/GFD_Dennou_Club/ftp/library/dcpam/git_repos/dcpam.git

dcpam という名のレポジトリができるので cd

> cd dcpam

手元のフックの設定

DCPAM の Git リポジトリでは, UTF-8 以外の commit ログを拒否 するため, 各自のリポジトリでこの設定をしておくことを勧めます.

Local hook setup

commit-msg フックの設定

commit-msg フックを使って commit ログの文字コードを UTF-8 に限定する.

> cd .git/hooks

hooks/commit-msg を作成し, ファイルに実行権限を与えておく. ファイルの中身はこちら.

ファイルを置いたら実行権限を与えておく.

> chmod 775 commit-msg
> cd ../..

pre-commit フックの設定

pre-commit フックを使って commit されるファイルの文字コードを UTF-8 に限定する.

> cd .git/hooks

hooks/pre-commit を作成し, ファイルに実行権限を与えておく. ファイルの中身はこちら.

ファイルを置いたら実行権限を与えておく.

> chmod 775 pre-commit
> cd ../..

リポジトリの確認

gitk で log 等を眺めてみる.

> gitk

git log を眺めてみる.

> git log

なお, この時, Git の pager は less が良いらしい. その他の場合には文字化けしたりする.