RedmineとGitの連携
前回の記事 Ubuntu10.4でRedmine
以前にUbuntu10.4にRedmineをインストールしましたが、Gitとの連携が出来ていなかったので、やってみました。
環境的には、RedmineとGitはインストール済みの状態から始めています。OSは前と同じでUbuntu10.4です。
今回は、id:ntakuさんのブログがとても参考になりました。とても丁寧でわかりやすく解説されています。
プログラミングノート - RedmineとGitで作るプロジェクト開発環境
http://d.hatena.ne.jp/ntaku/20090526/1243327903
では、さっそくやってみます。
Redmineから参照するGirリポジトリの作成
Redmineから参照するためのGitリポジトリを作成します。
今回は、/varにgitディレクトリを作成して、そこ以下に作成してみました。
$ mkdir -p /var/git/RegExpChecker.js $ cd /var/git/RegExpChecker.js $ git --bare init Initialized empty Git repository in /var/git/RegExpChecker.js/.git/
ワーク用ディレクトリからRedmine用リポジトリにpush
次にワーク用のディレクトリから、さっき作成したRedmine用のリポジトリに対して、pushします。
新規作成でも良かったのですが、Redmine上でどんな感じでリポジトリが見れるかてっとり早く確認したかったので、今回はgithubからクローンしてきました。
$ cd ^ $ git clone http://github.com/mrgoofy33/RegExpChecker.js.git Initialized empty Git repository in /var/git/RegExpChecker.js/.git/ remote: Counting objects: 18, done. remote: Compressing objects: 100% (14/14), done. remote: Total 18 (delta 3), reused 0 (delta 0) Unpacking objects: 100% (18/18), done. $ cd RegExpChecker.js $ git remote add local /var/git/RegExpChecker.js $ git push local master Everything up-to-date
Redmineでの設定
ここまでで、Redmine用のリポジトリが出来たので、今度はRedmine側の設定をします。
管理者(admin)でRedmineにログインして、「 プロジェクト選択 > 設定 > リポジトリ 」 から上記で作成したリポジトリ(/var/git/RegExpChecker.js)を指定します。
SCM: Git Path to .git directory: /var/git/RegExpChecker.js
RedmineのGIT_BINのパス修正
本当はこれまでの部分だけで上手く動作するはずなのですが、ブラウザで確認してもリポジトリの中身が確認できません。
ntakuさんのブログを参考にredmineの「lib/redmine/scm/adapters/git_adapter.rb」に記述されている「GIT_BIN」のパスを環境に合わせて修正します。
対象ファイル /var/www/html/redmine/lib/redmine/scm/adapters/git_adapter.rb 修正箇所 # Git executable name # GIT_BIN = "git" GIT_BIN = "/usr/bin/git"