操作
Gitとの連携について » 履歴 » リビジョン 1
リビジョン 1/2
| 次 »
廣瀬 僚一, 2025/12/19 21:58
Gitとの連携について¶
連携リポジトリ¶
https://github.com/clear-de-sign/rgu
サーバー設定¶
SSHキーの作成¶
ubuntuユーザーで実行
ssh-keygen -t ed25519 -C "redmine-server"
cat .ssh/id_ed25519
cat .ssh/id_ed25519.pub
chmod 600 ~/.ssh/id_ed25519
chmod 644 ~/.ssh/id_ed25519.pub
SSHキーの登録¶
作成したSSHキーをGitに登録。
clear-de-sign アカウントでログインして、「Settings」>「SSH and GPG Keys」
「New SSH key」で、id_ed25519.pubの内容を登録
gitリポジトリの作成¶
mkdir -p /var/lib/redmine/git/
cd /var/lib/redmine/git
git clone --bare git@github.com:clear-de-sign/rgu.git
sudo chown -R ubuntu:www-data /var/lib/redmine/git/rgu.git
sudo chmod -R 755 /var/lib/redmine/git/rgu.git
Redmineでのリポジトリ設定(全体)¶
- 「管理」>「設定」>「リポジトリ」
- gitのコミットメッセージに記載するキーワードの設定
以下のキーワードを、コミットタイトルもしくは、コミットメッセージに記入すると、redmineチケットとgitが紐づく。
refsがついたコミットメッセージは、チケットステータスがフィードバックに変更される。
fixesがついたコミットメッセージは、チケットステータスが解決に変更される。
コミット時に以下を入力する
タイトル:XXXの修正
メッセージ:refs #1234 ←RedmineチケットNo.
- 参照用キーワード:refs,references
- 修正用キーワード:
- fixes,closes:マージコミット時に記入
- refs:コミット時(確認時)に記入

Redmineでプロジェクトごとの設定¶
- 「設定」>「リポジトリ」>「新しいリポジトリ」
gitユーザーとredmineユーザーの紐付け¶
- 「設定」>「リポジトリ」>「ユーザー」
リポジトリの定期的な更新¶
ubuntuユーザーで実行
crontab -e
以下をcronに登録
- 5分おきに、リモートの全てのリポジトリをfetch
- /var/www/html/redmine に移動
- 変更履歴をredmine DBに取り込み
*/5 * * * * /bin/bash -lc 'echo "CRON START $(date)"; git --git-dir=/var/lib/redmine/git/rgu.git fetch --prune origin "+refs/heads/*:refs/heads/*" "+refs/tags/*:refs/tags/*"; cd /var/www/html/redmine && RAILS_ENV=production bundle exec rake redmine:fetch_changesets; echo "CRON EXIT=$? $(date)"' >> /var/log/redmine/fetch.log 2>&1
その他の設定¶
サーバーの設定を変更しているので以下を参照のこと
[サーバー変更]