私の開発ブランチを master ブランチにマージすることについて少しアドバイスが必要です。また、Git 拡張機能を使用していることにも注意してください。可能であれば、コマンド ラインの専門用語を使いすぎないようにしてください。
devブランチで 3 つのコミットを行ったとします (そして、現在もチェックアウトしており、mstブランチには、分岐した時点から 1 つのコミットがあります。
dev: 1 ---> 2 ---> 3
/
/
mst: 0 --- X
今、開発ブランチをmstブランチにマージしたいのですが、実際にはコミット 1 と 2 だけをマージしたいのです。
私の理解では、mstをチェックアウトし (進行中の作業のために事前に一時コミットをスタッシュまたは作成する)、mstを commit 2 とマージする必要があるということです。
dev: 1 ---> 2 ---> 3
/ \
/ \
mst: 0 --- X ---- 4
現在、コミット 3 は同期していないため、次に行うことはdevブランチを再同期することです。これを行うには、devをチェックアウトし、 dev を mst とマージするか、devをmstにリベースする必要があります。
すなわち。
dev: 1 ---> 2 ---> 3 --- 5
/ \ /
/ \ ------
/ \ /
mst: 0 ---- X ----- 4
また
dev: 1 ---> 2 5
/ \ /
/ \ /
mst: 0 --- X ---- 4
他の開発者とうまくいかない主な問題は、マージが膨大な時間の浪費になる可能性があることです。
- 現在の作業を「保存」し、mstをチェックアウトしてから、 devをチェックアウト する必要があります (VB6 を使用しているため、マージの競合が発生する可能性があり、VB6 が認識しないため、ファイルをリロードするために VB6 を閉じてから再度開く必要があります)。外部で変更されたファイル)
- 二重マージ プロセス (1 つはmstを更新 し、もう1 つはdevを再同期する)
また、私は stash でいくつかの信頼性の問題を抱えていました (時々、stash pop がポップを妨げます)。そのため、仲間の開発者に一時的なコミット (コミット 3 の後) を行い、最後に混合リセットを行うことをお勧めします。 .
私たちは小さな会社なので、できるだけ早くリリースすることが優先事項です (ただし、一部のリリースは保留されているため、すべてを公開することはできません)。これほど多くの手順が実際に必要ですか、それとももっと速い方法がありますか?