2

コミットIDを指定して、コミットされているすべてのファイルを取得しようとしています。

RevCommit commit = walk.parseCommit(ObjectId.fromString(objId));
FileTreeIterator fileTreeItr = new FileTreeIterator(repository);
Tree tree = new Tree(repository);
IndexDiff indexDiff = new IndexDiff(repository, commit.getId(), fileTreeItr);
System.out.println(indexDiff.getChanged());
System.out.println(indexDiff.getAdded());

上記のコードは機能していません。誰かがここで何が間違っているのか、またはこれを機能させるための別の方法を理解できますか?

4

1 に答える 1

0

このコード例は、IndexDiffを使用するときに役立つ可能性があります。

IResource project = session.getLaunchedProject().getResource();
File gitDir = new File(project.getLocation().toFile().toString() + "/.git");
System.out.println("gitDir:" + gitDir);
Repository repository = new FileRepository(gitDir);

File workTree = repository.getWorkTree();
IWorkspaceRoot workspaceRoot = ResourcesPlugin.getWorkspace().getRoot();
WorkingTreeIterator fileTreeIterator =
new AdaptableFileTreeIterator(workTree, workspaceRoot);

IndexDiff indexDiff = new IndexDiff(repository, Constants.HEAD, fileTreeIterator);
于 2012-02-24T08:43:44.180 に答える