1 つにはアクティブな git リポジトリがあり、もう 1 つには git 履歴がない場合に、2 つのソース間の最適な一致を見つけることについて以前に提起した質問の一部として、最も近い git commit を見つけるための perl スクリプトを作成しました。
どのブランチを使用するかを推測する必要がないように、スクリプトを書き直しているところですが、すべてのブランチで実行されて最も近いものが見つかり、最適なブランチでの最適なコミットが示されます。残念ながら、私が使用している測定値は、「近さ」の最良の判断ではない可能性があります。
現在、diff -burN -x.git my_git_subtree my_src_subtree | wc -l
コード ツリーがどれだけ近いかを判断するために使用しています。これは多かれ少なかれ機能しているように見えますが、別のブランチに存在する可能性が高い、または存在しない可能性のあるフォルダー全体が追加または欠落している場合に遭遇します。
ソースがどれだけ近いかを判断するより良い方法はありますか? ディレクトリ構造を比較するもの、おそらく何行異なるかを想像しています。さまざまなパラメーターを に渡すだけの問題diff
かもしれませんし、そのようなことを行う別のツールがあるかもしれません。