私はオープン ソース プロジェクト ( vcsshark ) を使用しています。これはpygit2
、git リポジトリから情報を抽出し、それを mangodb データセットに保存するために適用されます。このコミットpygit2
のファイル名変更と GitHubの間でいくつかの競合があることがわかりました。GitHub では、そのコミットで 2040 のファイルの名前変更が示されpygit2
、次のコードを使用した 2988 のパッチが示されています。
import pygit2
repo = pygit2.Repository('/cayenne')
a = repo.revparse_single('ae98b6c41')
b = a.parents[0]
diff = repo.diff(b, a)
diff.find_similar(pygit2.GIT_DIFF_FIND_RENAMES)
patches = [p for p in diff]
この競合は、 のようなパラメータ設定によるものだと思いrename_threshold
ましたpygit2.Diff.find_similar()
。しかし、それは理由ではありませんでした。
diff
からコマンドを試しGitPython
てみたところ、その結果は GitHub と一致することがわかりました。しかし、vcsshark
I pygit2
have to find a way to make pygit2
returns the same results as GitHub and GitPython
.