狠狠撸
Submit Search
Redmineとgitの 連携利用事例
?
2 likes
?
9,234 views
Tomohisa Kusukawa
Follow
2018年5月26日(土) redmine.tokyo 第14回勉強会 Git連携 パネルディスカッション 事例紹介資料
Read less
Read more
1 of 12
Download now
Downloaded 22 times
More Related Content
Redmineとgitの 連携利用事例
1.
RedmineとGitLabの 連携利用 redmine.tokyo 第14回勉強会 パネルディスカッション 事例紹介資料 2018年5月26日
@tKusukawa 1
2.
自己紹介:@tKusukawa くすかわと申します。redmine.tokyoのスタッフです。 Redmineプラグイン:WorkTime、WikiListsなどを作って 公開しています。(最近メンテできておらず すみません) 仕事:システム部門長→ 課題管理、管理台帳、業務記録など、 業務の多くの場面でRedmineに大変お世話になっています。 自分たちのGit連携のやり方をお話します。気になったことを話のネタにして頂いて、 より良い方法のヒントが得られれば幸いです。(是非ツイート/メモして下さい
#redmineT ) およそ月80チケット、週2?3回本番反映している開発運用の事例のお話です。 22
3.
構成と運用 GitLabはHubリポジトリとしてのみ利用していてIssueなどの機能は使っていません。 ← 非エンジニアを含め元々Redmineを利用していて、情報連携させたい為。 3 GitLab originリポジトリ 開発者PC開発者PC 検証環境 ブランチ:
stg 本番環境 ブランチ: production pull /push pull Redmine チケットシステム リポジトリ閲覧ツールプログラマ以外に Gitを使わせるのは かなりしんどいが、 RedmineならURLで 参照してもらえる。 pull / reset (切り戻し) バージョン管理は言うまでもなく 超重要 ソフト開発の三種の神器
4.
システム的な接続方法 Redmineサーバプログラムから GitLabのbareリポジトリのディレクトリを 直接参照できるようにしています。 Host Linux /srv/docker/gitlab/gitlab Docker GitLab /home/git/data Docker
Redmine /home/redmine/gitlab 4 マウント マウント
5.
Redmine管理者 設定画面 0. 「使用するバージョン管理システム」の「
Git」にチェック 1. 「参照用キーワード」に「 *」を設定→ refsやfixesを書かなくても #nnn だけでリンクになる (#nnnの前後に文字があるとチケット Noと認識されないので注意。全角スペースは NG。) 2. 「異なるプロジェクトのチケットの参照/修正を許可」にチェック 1.管理 2.設定 7.保存 5 3.リポジトリ 4.Git 5.参照用キーワード「*」 6.別プロジェクトもリンク
6.
リポジトリ参照設定 Redmineのプロジェクト「設定」タブ→「リポジトリ」でパスを設定します。 リポジトリパス: /home/redmine/gitlab/repositories/<gitlab-user>/<gitlab-pj>.git 6 前提:モジュールで リポジトリにチェック
7.
コミットコメントでチケットとの相互リンク コミットコメントにチケット番号があると 「関連するチケット」に自動で登録されて相互リ ンクができる ← 後から手動で相互リンクを 追加/削除 することも出来ます
7
8.
リポジトリ閲覧ツール ∈ Redmine <修正差分表示> そのコミットでの全ての差分を ブラウザ内検索できたりして便利 8 <アノテート> その行を最後に更新したコミットを 追跡できて便利
9.
チケットとコミットの相互リンクの意義 チケット: どうしたくて(経緯)、どうなった(結果) Gitコミット: いつ、だれが、どこを、なにから、なにに →変えた こうしておかないと「プログラムの意図」が解らなくなる 9 ここがつながる(多対多)
10.
開発運用サイクル(チケット=開発ブランチ) 10 チケット起票 チケットクローズ 開発ブランチ作成 開発ブランチ削除 コーディング /
コミット master 13773 stg production 検証 Ver付与 / 本番デプロイ X X ブランチ戦略 13734 マージ/テスト 本番デプロイ 平均 一日4チケット =月80チケット を本番リリース
11.
開発運用サイクル(マージとデプロイ) 11 GitLab originリポジトリ 開発者PC開発者PC 検証環境 ブランチ: stg 本番環境 ブランチ:
production pull /push pull pull / reset (切り戻し) Redmine チケットシステム リポジトリ閲覧ツール チケット起票 チケットクローズ 開発ブランチ作成 開発ブランチ削除 マージ
12.
まとめ 自分たちのGit連携のやり方を お話させて頂きました。 (話のネタをツイート/メモして頂けましたでしょうかw) Redmineのチケット(どうしたくて、どうなった)と Gitのコミット(いつ、だれが、どこを、なにから、なにに 変えた)を 相互に関連付けて確認?記録しています。 チケット起票
→ ブランチ作成/コミットと マージ /リリース → チケットクローズ のサイクルを月80チケットペースで運用してるお話でした? 12
Download