学術研究に取り組んでいますが、私たちのプロジェクトに適した git ワークフローはまだ見つかりません。
設定: メイン プロジェクトはブランチ マスターに保持されています。新しいアイデアが生まれると、研究をサポートするために新しいブランチが作成されます。通常、主要なプロジェクトに関して、異なる人々によって推進されたいくつかの並行研究があります。
私が研究ブランチ R に取り組んでいるとき (数か月かかり、多くのコミットが必要になる場合があります)。私のコミットのいくつかは、研究とは直接関係がなく、プロジェクト自体を改善しています... これらのコミットを master ブランチにプッシュしたいです (他の人にとって役立つ可能性があります)。
どうすればいいですか?チェリーピック?多くのチェリーピック(より多くの人々と異なるブランチから)の後、最後にブランチRをマスターとマージするのは難しいと思います。
おそらく、より良いオプションは、コミットする前にマスターに切り替え、コミットを行い、次に切り替えてマスターから更新をプルすることです。しかし、これは次の 3 つの理由から難しいようです。
- 多くのファイルが競合などでコミットされていないため、master への切り替えは容易ではありません (何とか stash を使用する必要があります)。
- 後になって、R から master に古いコミットをプッシュする必要があることに気付くことがあります。
- 他の誰かからのマスターからの他の更新を望まないことがあります。それらは後で役に立ちますが、現時点ではそれらに対処する時間がありません。
それを行う適切な方法は何ですか?