Цикл над коммитами для файла с помощью jGit

Мне удалось разобраться с основами работы с файлом jGit в плане подключения к репозиториям и добавления, фиксации, и даже зацикливание сообщений фиксации для файлов.

File gitDir = new File("/Users/myname/Sites/helloworld/.git");

RepositoryBuilder builder = new RepositoryBuilder();
Repository repository;
repository = builder.setGitDir(gitDir).readEnvironment()
        .findGitDir().build();

Git git = new Git(repository);
RevWalk walk = new RevWalk(repository);
RevCommit commit = null;

// Add all files
// AddCommand add = git.add();
// add.addFilepattern(".").call();

// Commit them
// CommitCommand commit = git.commit();
// commit.setMessage("Commiting from java").call();

Iterable<RevCommit> logs = git.log().call();
Iterator<RevCommit> i = logs.iterator();

while (i.hasNext()) {
    commit = walk.parseCommit( i.next() );
    System.out.println( commit.getFullMessage() );

}

Что я хочу сделать дальше, так это получить все сообщения фиксации для одного файла, а затем иметь возможность вернуть этот отдельный файл обратно к определенной ссылке / моменту времени .

9
задан araqnid 24 January 2011 в 00:09
поделиться