如何以编程方式将工作区中的文件与 git 上的文件进行比较

How to compare a file in your workspace with the one on git programmatically

我有一个从 Git 克隆的 Eclipse 工作区,我需要一个文件列表,这些文件与 Git master 上的文件相比在本地发生了变化。

我不是说使用 git diff,我的意思是使用可能的 Java/Git API 以编程方式使用 Java...所以最终有 list/array 个已更改的文件应该归还。

我在 Git 以外的服务器上看到了一些资源,例如:How to compare local file with Amazon s3 file

您可以使用 JGIT API to compare the file between project files and a git branch/tag. It's pure java solution. All you need is install EGIT.

我曾经为类似的目的写过一个 Eclipse 插件 TeamFileList。您可以阅读 com.beck.ep.team.git.GitListBuilder 的来源,也许它可以帮助您。