1
我需要上次更改/提交GIT存儲庫中的文件的用戶。如何查找最後一次使用JGit更改文件的人
該項目由許多子文件夾組成,主分支有許多合併的提交。
我想:
File gitWorkDir = new File("D:/gitfolder/");
Git git = Git.open(gitWorkDir);
RevCommit latestCommit;
String path = "test.txt";
try(RevWalk revWalk = new RevWalk(git.getRepository())) {
Ref headRef = git.getRepository().exactRef(Constants.HEAD);
RevCommit headCommit = revWalk.parseCommit(headRef.getObjectId());
revWalk.markStart(headCommit);
revWalk.sort(RevSort.COMMIT_TIME_DESC);
TreeFilter filter = AndTreeFilter.create(PathFilter.create(path), TreeFilter.ANY_DIFF);
revWalk.setTreeFilter(filter);
latestCommit = revWalk.next();
git.close();
}
存儲庫和HEAD承諾是有的,但latestCommit
始終爲空。
我必須爲我的文件定義整個路徑嗎? 這是一個問題,主分支是如此「分支」,所以也許提交不能被發現,或者還有什麼可能是問題?
你想知道作者誰最後改變了** **具體文件? – clinical
是的,我有一個約500個文件的列表,並需要每個文件的信息 – Sirim