開発中、私はしばしば「中間」コミットをコミットしてプッシュする必要があります。つまり、コンパイルできないコードや何かを変更している途中のコミットなどです。そのようなコミットはしたくないのですが、これは作業を簡単に続行するために必要です。オフィスから自宅まで、時には他の開発者が彼らの仕事を始めるための基盤を手に入れるために。
私はその問題の解決策を見つけたと思いました:
別の「dev」ブランチを作成し、すべての中間コミットを行います。
コードが良好な状態になったら、マスターにマージします。したがって、マスターには「中間」コミットは含まれず、「通常」コミットのみが含まれます。
すべての中間コミットで「dev」ブランチを削除します。
しかし、これは機能しません。マージを行うと、マージコミットがマスターに含まれるだけでなく、「dev」ブランチからのすべての「中間」コミットも含まれます。したがって、「dev」ブランチを削除しても何も得られず、その「中間」コミットはそのまま残ります。
したがって、質問は次のとおりです。マスターが自身のコミット+マージコミットのみを含み、2番目のブランチからのコミットを含まない方法でマージを行うことは可能ですか?それが不可能な場合は、私の目標を達成する方法を教えていただけますか?中間結果を一時的に保存するだけでなく、後でシームレスに削除する機能もありますか?