GitHubのプルリクエストモデルは、承認後の実装に使用できますか?


7

four-eyes原則の可能な実装(または例)は何ですか?」に対する受け入れられた回答は、GitHubのプルリクエストモデルが可能な実装であることを示唆しています。

そして、「緊急修正の四目原理を実装する方法」に対する私自身の回答は、承認後の概念を説明しています。

私の質問:GitHubのプルリクエストモデルは、承認後の実装にも使用できますか?もしそうなら:どのように?そうでない場合、Git(GitHub?)で他に使用できるものはありますか?


シェフの貢献プロセスの説明は意味がありますか?リンクで引用すると盗作になるので、チップの上に何も追加しないと思います。
Tensibai 2017年

Bonjoiur @Tensibai ...私はそのプロセスがそのようなポスト承認のためにどのように使用/考慮されることができるか理解していません(それを取得しない私でなければなりません)。それで、おそらくあなたは答えを(そのリンクを参照して)追加し、そのようなプロセスが私の質問に答えると思う理由を説明を追加すべきでしょうか?
Pierre.Vriens

私はリチャードがすでに言ったことの多くを繰り返すと思います。主なポイントは、メンテナーがマスターにマージする権利を持っているため、同じスキームに従って、自分の作業を承認し、後でレビューできるようにすることです。
Tensibai 2017年

全体として、これはあなたの質問にあなたの答えをリンクするためのGithubの方法です:)
Tensibai

回答:


3

はい、そう思います。私が同様のものを実装する方法に基礎を置く必要があることを説明するために、できるだけ明確にするためにモデルを簡略化しました。

仮定

ここでは、選択したCI / CDツールとしてJenkins、TeamCityなどが使用されていることを前提としています。さらに、GitHubが使用されており、明確に定義され、適切に制御された分岐構造があります。

分岐図

構成

この例では、GitHubは次のように構成されています。

  • ブラックの「マスター」ブランチは、プルリクエストを使用してのみマージできます。直接コミットは許可されません。
  • Blue 'Development'ブランチは、直接コミットまたはマージを受け入れることができます。実際には、このブランチには追加の制限がある場合があります。
  • Red 'Hotfix'ブランチは、直接コミットおよびマージを受け入れることができます。
  • 必須ステータスチェック、ブランチがビルドに失敗したときにプルリクエストがマージされるのを防ぐために、厳密モードで有効になっています。
  • 修正プログラムのブランチが先マスターのであれば、要求を引くマスターのいずれかで、ブロックされますステータスAPIまたはGitHubのエンタープライズの事前受信フック

CI / CDツールは次のように構成されています。

  • 開発ブランチからのビルドは、本番環境にデプロイできません。
  • マスターからのビルドは、すべての環境にデプロイできます。
  • Hotfixからのビルドは、すべての環境に展開できます。
  • Hotfixからの展開では、一部の非開発機能(たとえば、変更/リリースチーム)に通知し、承認後の実行を依頼します。

ノート

マスターは現在の運用状態を表すため、保護されています。これを実際に行うには、マスターブランチへのマージが成功した場合にのみ、デプロイメントが行われる別の「リリース」ブランチがある場合があります。

キーポイント

Blue Developmentブランチは基本的に無料です。Hotfixは無料で提供されますが、どのような展開でも、承認後の作業を行い、変更をマスターにマージする開発以外の機能に通知することにより、一種のBreak Glassをトリガーします。

HotfixがMasterよりも先にある間は、Master stopにマージすることが不可欠です。

  1. マスターがホットフィックスを上書きしないように配置すると、回帰が発生する可能性があります。
  2. HotfixブランチにあるHotfixがマージされずに弱体化するのを防ぎます。

一部の組織では、Hotfixが承認後に保留されている間、中央のGitHubリポジトリへのすべてのプッシュを防止するのに役立つ場合があります。


いいリチャード、慈悲!私はあなたがあなたの回答に書き込んだいくつかのことを要約し、おそらくいくつかの追加のコメントを後で追加して、あなたが書いたいくつかのことを明確に/完成させます。必要に応じて、フォローアップの質問も追加します。「質問への回答が10の新しい質問を引き起こす...」のようなものに慣れていますか?
Pierre.Vriens

@ Pierre.Vriens私は効果のクライアントの実装の上記のうち抽出してきた、質問をたくさん聞いてくださいGitHubのエンタープライズジェンキンスをし、完全にメモリから-私が何かを見逃していることが可能であり、それはそれを書くために私に4時間かかりましたとても注意深くチェックしていたので。「質問への回答が10の新しい質問を引き起こす」ことについては、コンサルティングでは非常に一般的です。
Richard Slater

質問を「紙」に書き留める機会を得たことがありますか?必要に応じて、チャットで話してください。
Richard Slater
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.