以下の簡単な説明:コミットメッセージをサブツリーにプッシュしたいのですが、そのツリーに適用されるメッセージのみです。どうすればよいですか?
私には2つのプロジェクトがMaster
ありSlave
ます。 Slave
チェックアウトされたのサブツリーとしてMaster
チェックアウトされますlib/slave
。git subtree merge --prefix=lib/slave --squash projects/slave
ここで、チェックアウトされprojects/slave
たブランチは次の場所にSlave
あります。
ブランチ:
マスタープロジェクト/スレーブ→スレーブ
現在、私は自分のmaster
ブランチに取り組んでおり、両方のプロジェクトの一部であるファイルにコミットし、すべてが順調に進んでいます。今、私は変更をプッシュバックしたいと思いますSlave
:
- gitチェックアウトスレーブ
- gitマージ??? 主人
lib/slave
通常のマージを行うと、のファイルが変更されたかどうかに関係なく、マスターへのコミットごとにコミットが取得されます。または、を実行して--squash
1つのコミットしか取得できませんが、ログメッセージが失われます。
では、適切なログメッセージを取得するにはどうすればよいですか?たとえば、master
ログ履歴が次の場合:
- マスターに画像を追加
- スレーブのみで変更されたファイル
- マスターのみへのその他の変更
- マスターとスレーブの変更されたファイル
これを追加したいSlave
:
- スレーブのみで変更されたファイル
- マスターとスレーブの変更されたファイル