同じ db モデルを使用して、混合セットアップで git と hg の変更セットを表すことを考えています。これにより、リポジトリに git-vs-hg を保存するだけで済みます。
hg と git のアルゴリズムの間に既知の重複があり、hg と git を別々に使用する場合よりも、2 つのアルゴリズムの間で競合が発生する可能性が非常に高いのでしょうか?
きっと大丈夫だよ。
どちらも(現在)SHA-1を使用しています。APIによって公開されるハッシュは、その16進表現にすぎないため、追加のリスクはありません。これは、暗号化ハッシュのプロパティから直接発生します。
言い換えれば、ハッシュが計算される前にどの処理が使用されるかは問題ではありません。データがハッシュを通過すると、統計的な意味で「均一」になります。後の処理は物事に影響を与える可能性がありますが、私が知る限り、後処理はありません(SHA-1は160ビットまたは20バイトを生成します-予想どおり、gitハッシュとmercurialハッシュはどちらも40文字の16進文字列です)