背景:假设从 master 1.0 版本新建分支重构代码,新分支叫 v2。 重构过程中,master 1.0 不断有新的修改或 bug 修复合并。等到 v2 开发完成时,两个分支之间差异太多,冲突也很多。
这样的场景下,如何处理才能比较好的发布 master 2.0?
实践中,当重构代码时,如何操作才能比较好的避免大量冲突的出现?
迷茫2017-05-02 09:28:06
こんにちは。合併中のフラッシングに対処する簡単な方法はなく、対応する事業担当者が 1 つずつ対処しなければならない場合があります。
リファクタリングのプロセス中に、マスターはバグに対処し、機能をリリースする必要があるため、いくつかの反対意見があります。 v2 のマージが間に合わないのはなぜですか?
マスター 1 が毎回正式にリリースされると、マスター 2 も時間内にマージでき、競合の量が減ります。
过去多啦不再A梦2017-05-02 09:28:06
私たちも同様の問題に遭遇しました
たとえば、安定版があり、その下に fs というディレクトリがあります
次に、開発ブランチがあり、その下に fsv2 というディレクトリがあります
新しいバージョンは開発時に開発され、fs ディレクトリは廃止されました。関連する fs コードは fsv2 ディレクトリ内で変更されました。
現時点では、ホットフィックスをすぐに実行する必要がある問題が発生しています。ホットフィックスを実装するたびに、この変更を開発の fsv2 ディレクトリにマージするにはどうすればよいですか?新しいブランチの新しいパッチこれはホットフィックスにも当てはまります。大規模な機能の開発では、安定版は通常必要ありません。統合する前に、共通のディレクトリに置き、より一般的なモジュールにするのが最善です。
これは私自身の経験です、少し遅れているかもしれませんが、アドバイスをお願いします。
伊谢尔伦2017-05-02 09:28:06
一般的に、リファクタリングした部分がマスター1.0で修正されていない場合は、もちろん問題ありません。
リファクタリングされた部分に新たな変更がある場合、2 つのタスクを実行する人々はよくコミュニケーションを取る必要があります。そうしないと、マージ中に間違いなく問題が発生します。
しかし通常、コードの同じ部分を同時にリファクタリングして変更する必要はありません。これを本当に実行したい場合は、2 つのタスクを完全に同期する必要はなく、1 日はリファクタリング、1 日は変更、ブランチのマージを繰り返し行うことができます。