sponsored link

GitPythonでdiffをとる方法

Gitpythonを使ってdiffの情報を取得します。

diffの取り方

下のような感じにします!(雑!)

import git

repo =  git.Repo('(ここにリポジトリへのパスを入れてね)')
t = repo.head.commit.tree

print(repo.git.diff(t))

repo.head.commit.tree のdiffをとることで現在のコミットに含まれるすべてのファイルの差分を表示します。

いろんなdiff

他にもいろんなdiffを撮りたい方もいらっしゃると思います。

先ほど t と入れた部分には HEAD や HEAD^ 等、gitコマンドでよく見る奴らを入れることができます。

例えば、repo.git.diff(HEAD^) にすることで、最新のコミットとその一個前のコミットのdiffをとることができます。

この辺りは公式のドキュメントにも記載があります。↓

GitPython Tutorial — GitPython 3.1.0 documentation

以上♪

関連書籍

コメント