Edited at

RedmineとGitの連携メモ

More than 3 years have passed since last update.


  • OS: ubuntu14.04lts

  • ベアリポジトリは/home/user/git/public/barerepository.git


Gitのインストール

$sudo aptitude install git

gitをインストール.

そのほかは基本的なgitコマンドまとめを参考に.


Redmineの設定

図1 Redmine>管理>設定>リポジトリ

APIキーを生成しておく.



図2 Redmine>プロジェクト>プロジェクト名>設定>新しいリポジトリ



Gitと連携させるベアリポジトリを設定する.

識別子はファイル名とかわかりやすいように,メインリポジトリや最新コミットを表示させるかどうかはオプションで.


Gitのhooksを利用する


/home/user/git/public/barerepository.git/hooks/post-reseive

#!/bin/sh

WGET="/usr/bin/wget"
REDMINE_URL_BASE="http://localhost/redmine/"
REDMINE_REPOS_API_KEY=redmine_api_key
REDMINE_PROJECT_ID=redmine_project_id

echo "redmine update"
RESPONSE=$($WGET "${REDMINE_URL_BASE}sys/fetch_changesets?key=${REDMINE_REPOS_API_KEY}&id=${REDMINE_PROJECT_ID}")
echo $RESPONSE
exit 0


ベアリポジトリのhooksの下にpost-receiveを作成する.


$sudo chmod 775 /home/user/git/public/barerepository.git/hooks/post-reseive

post-receiveの権限を書き換える.

これにより,ベアリポジトリにpushされたときにRedmineが自動で更新されるようになる.



ちなみに

図1のように参照用キーワードを*に変えておけば,チケット番号をコミットメッセージに書いてあげるだけでチケットと紐付けされる.

$git commit -a -m "これは練習だよ! #1"      //こんな具合に



参考サイト