2017-04-20 12 views
-1

libgit2でスカッシュタイプのマージを実行できますか?"git merge --squash" with libgit2

SOの「不十分な」メッセージサイズ制限を満たすいくつかのフィラーワードを追加します。私が知っている、それはばかげ超えます:D

答えて

1

典型的なマージのワークフローは、作業ディレクトリとインデックスにマージするgit_mergeを呼び出して、競合をチェックして、複数の親を持つgit_commit(HEADを呼び出し含み、上流のは、あなたがマージしているコミット)。

--squashをエミュレートするには、単にコミットを省略します(または、唯一の親としてHEADを使用してコミットします)。いずれの場合も、マージ状態を明示的にgit_repository_state_cleanupでクリーンアップする必要があります。