これまたは同様のgit分岐ワークフローを使用していますか?
職場でも同様のワークフローを使用していますが、少し複雑ではありません。ただし、この記事を何度も読んだことがあるので、このワークフローに大きく影響を受けています。私は自分の机の横に色分けされた分岐モデルのpdfさえ持っています:)
これは生産的なアプローチだと思いますか?
生産的。生産性をどのように定義しますか?ええと、私の心の中で、少なくとも常により良い品質を試し、達成することは、高品質であることが最も重要です。常にプロセスなどを改善します。高品質のコードを作成できれば、生産性はその恩恵を受けます。だから問題は本当に:これはソフトウェアの品質を改善しますか?そして、それに対する私の答えは間違いなくイエスです。
このタイプの分岐モデルで最も気に入っているのは、品質の異なるレイヤーで分岐を導入することです。画像の右側にあるほど、安定性と品質が高くなります。マスターブランチは神聖であり、それに対するすべてのコミットはソフトウェアの安定したバージョンと見なされるべきです。左側に行くほど、実験的で安定性が低くなります。
新しい機能とバグ修正をテストしたらすぐに、それらを左から右に徐々に転送して、コードが要求する品質要件を満たしていることがわかっている場合に、高品質のコードを正確に移動できます。まあ、少なくとも理論的には、すべてを100%までテストすることはできず、コードには常にバグが含まれているため、コードにバグが含まれていないことを確認できます。しかし、それはあなたが高い信頼を保つことを可能にします。
プログラマーとしては、誰もコードに自信がないシステムで作業するよりも、何も悪いことはしません。
このアプローチに欠陥はありますか?潜在的な欠点はありますか?
組織のニーズにうまく適合するように、ブランチモデルをよく検討することが重要です。このモデルが一部の人に適しているからといって、必ずしも他の人にとって最適または望ましいというわけではありません。
常にトレードオフがあり、この場合でもです。トレードオフの1つは、ブランチの数と複雑さです。さまざまな種類のブランチを導入することで、ワークフローの複雑さが増します。たとえば、数行のコードを変更して簡単なバグを修正しようとしているときに、常に新しい機能のブランチを作成するように強制するのは間違っているかもしれません。
バグの解決は多かれ少なかれ複雑であることは誰もが知っています。したがって、些細なバグが発見された場合は、複雑さや管理を削減して余分なオーバーヘッドを取り除き、人々がマスターやブランチの開発などに直接コミットできるようにすることができます。しかし、修正の性質がより複雑になるにつれて、修正のために新しいブランチを作成するための余分なオーバーヘッドの価値があります。特に、そのサイズと長さがわからない場合、または自分と他の開発者の間のコラボレーションを改善したい場合。
より良いアプローチがある場合は、共有したり、それに関する記事やディスカッションへのリンクを提供したりしますか?
これは間違いなく良いアプローチであり、ほとんどの場合私たちのほとんどが同様の開発プロセスを持っているため、それはほとんどの場合に適合しますが、すべての人に適しているわけではありません。今すぐコードをどのように処理するかを検討し、既存のモデルに適合する分岐モデルを作成してみることを強くお勧めします。
最も重要な点はgitを使い始めることであり、残りは自然に続くでしょう。シンプルに始めて、徐々に改善していきましょう!クリエイティブに!
乾杯