私はGitを約1年間使っていて、それは素晴らしいと思っていますが、プロジェクトの2番目のバージョンを開始し、新しいブランチを開始しました。私は、今後のことを処理する最善の方法で少し苦労しています。git - マージするときに特定のコミットをスキップする
私はsay master10(v1)とmaster20(v2)という2つのブランチを持っています。私は支店master10のv1でバグ修正を行い、master20の新しいものを開発しています。バグ修正を行うたびにmaster20をチェックしてgit merge master10
を実行してv2にマージします。ここまでは順調ですね。
しかし、私はv2で必要としないv1を変更しましたが、他のバグ修正のマージを続けたいと思います。特定のコミット(またはコミットの範囲)をスキップするようにGitに指示するにはどうすればよいですか?しかし、今後も他のバグ修正をマージしたいと考えています。
私はgit rebase
が私が必要とするかもしれないと思ったが、医師と私の頭がほとんど爆発したと思った。
私が望むのは、gitに2つのブランチが同期していることを伝える "git sync"コマンドのようなものだと思うし、将来このsync-pointからのコミットだけをマージします。
助けてください。
しかし、それは少し危険ではないかと思います。マストは何ですか?3は無視してはならず、単に延期してはいけませんか?あなたの解決策では、その後のgitマージmaintはマスト〜3をマージしません。 – VonC
コミットを延期するために、私は "サブブランチ"を作成し、あなたが何を記述するか(git merge -s ours maint〜3を含む)を行い、サブブランチからマスターまでのすべてをマージします。私は将来の "git merge maint"が今度は "mast〜3"をマージすると信じています – VonC
私はあなたがそのコミットをマージするのを延期する必要があるならば、それをスキップする(merge -s ours)チェリーピックコマンドコミットがマスターから到達可能になると、再度マージすることはできません。同じ変更を2回マージすることを避けることは、主要なgitの目標の1つです。 – araqnid