リファクタリングはGitFlowブランチネーミングモデルのどこに属しますか?


22

私は最近、bitbucketで実装されたGitFlowモデルの使用を開始しました。そして、私には完全に明確ではないことが一つあります。

リファクタリングタスクをバックログ、計画、および実装することにより、技術的な負債に定期的に対処しようとしています。そのようなリファクタリングブランチは、でマージされたプルリクエストで終わりますdevelop。私の質問は、リファクタリングブランチはGitFlowのどこに属しますか?

  • featureプレフィックスを使用することは最も論理的ですが、リファクタリングによって新しい機能が追加されることはないため、完全に正しいとは限りません。
  • しかしbugfix、実際のバグリファクタリングの修正がないため、プレフィックスの使用は適切ではないようです。
  • 一方で、カスタムプレフィックスを作成することは、物事を過剰に設計しない限り複雑化するように思えます。

そのような状況はありましたか?これに対処するためにどのプラクティスを使用しますか?理由を説明してください。


リファクタリング用のブランチが必要なのはなぜですか?定義によって製品の機能を変更することはありませんので、開発で直接それらを実行できるはずです。
jonrsharpe

要するに@jonrsharpeは、より便利で制御可能です。通常、リファクタリング用のJiraチケットがあり、プルリクエスト中にコードレビューも行われます。さらに、マージされる前に、ビルドとテストが実行されます。ブランチのグリーン化を維持するよう努めています。
AMA

4
あなたは物事を過剰に設計している-この場合、プロセス。個別のワークパッケージとしてではなく、システムでの作業としてリファクタリングします。
コチェッセ氏

2
その場合:1.あなたには私の同情があります。および2. useと言うとrefactor、各マージが製品に対してどのような変換を行うかが明確になります(バグ修正:壊れた動作を修正、機能:新しい動作を追加、リファクタリング:以前の動作を保持)。しかし、@ MrCocheseは正しいです。それは、あなたが別のタスクではなく、実際に実行している他の作業の一部であるべきです。また、リファクタリングがビルドを壊した場合、リファクタリングではない
-jonrsharpe

あなたがしているリファクタリング作業のいくつかは、実際には適切なメイン作業の一部であるべきです。私は確かに定期的にブランチをリファクタリングするのではなく、大規模なクリーンアップの一環としてのみ行います。これを習慣にすることで、クリーンアップ作業を「リファクタリング」ブランチに延期するなど、他の悪い習慣を助長します。
ロバートハーベイ

回答:


27

リファクタリングの作業は機能ブランチで行う必要があります。

接頭辞「feature」は、個別のプログラミングタスクを説明するための単語です。好きな単語を選択できます。開発からのブランチは、「feature」ブランチまたは「release」ブランチのいずれかです。

「リファクタリング」などの新しいプレフィックスの追加には問題があります。機能を追加するときにリファクタリングを行うことが多いため、単に名前の問題を抱えて混乱を招くことになります。すなわち。「一部の機能ブランチは「リファクタリング」と呼ばれます。すべてのリファクタリング作業が含まれているわけではなく、バグ修正や機能が含まれていることもあります」

同様に、「ホットフィックス」ブランチはホットフィックスを含むため、ホットフィックスとは呼ばれませんが、開発ではなくマスターからブランチするためです。


1
ありがとうございました。これは理にかなっています。もう少し待ちます。他に答えがなければ、あなたの答えを受け入れます。
AMA
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.