1

go-git 可以获取两个分支之间的差异,或者,例如,当前分支和主分支?

使用 GIT,您可以获得当前分支和主分支之间的差异:

$ git diff master

在两个分支之间:

$ git diff master feature/branch

我发现这个答案可以使用 (*object.Commit).Patch,但在提交之间,而不是分支之间。

4

1 回答 1

1

使用go-git,您可以从func (r *Repository) Branch(name string) (*config.Branch, error)

或获取参考:

ref := plumbing.NewHashReference("refs/heads/my-branch", headRef.Hash())

从该 ref 获取一个 Commit,每个分支一个。
这样,您可以调用Patch()

于 2021-12-03T07:58:42.363 回答