私は現在、OSSプロジェクトのトランクからフォークに機能を選択しようとしています。どちらのリポジトリもgitを使用しており、トランクをブランチとしてフォークにインポートしているので、作業が簡単になります。
私が取っているアプローチは、1つのブランチから別のブランチに関連するすべてのコミットを選択しようとすることです。これは、単純なマージを行うことは不可能であるためです。分岐したものが多すぎます。
コミットのリストを生成するために、私はgit-log
実行する2つのコマンドを特定しました。
git log --branch project-trunk **/*Foo*
これは、project-trunk
ブランチに「Foo」という単語が含まれているファイルのログを提供することを目的としています。これはかなり良い出発点ですが、関連する他のコミットがあることがわかりました。幸いなことに、それらは通常、コミットログに識別作業があります。だから私が使用しているこれらを見つけるために:
git log --branch project-trunk --grep Bar
project-trunk
これにより、作業「バー」を含む ブランチのログが得られます。
問題は、これら両方のコマンドの和集合を時系列で含むマスターリストが本当に必要なことです。マニュアルを読みましたgit rev-list
が、やりたいことがわかりません。
このように2つの別々の条件を結合することは可能ですか?git-log
そうでない場合は、2つのコマンドの出力を時系列で結合する簡単な方法はありますか?