Example usage for org.eclipse.jgit.lib TreeFormatter append

List of usage examples for org.eclipse.jgit.lib TreeFormatter append

Introduction

In this page you can find the example usage for org.eclipse.jgit.lib TreeFormatter append.

Prototype

public void append(String name, RevBlob blob) 

Source Link

Document

Add a regular file, mode is org.eclipse.jgit.lib.FileMode#REGULAR_FILE .

Usage

From source file:svnserver.repository.git.LayoutHelper.java

License:GNU General Public License

public static ObjectId createCacheCommit(@NotNull ObjectInserter inserter, @NotNull ObjectId parent,
        @NotNull RevCommit commit, int revisionId, @NotNull Map<String, ObjectId> revBranches)
        throws IOException {
    final TreeFormatter treeBuilder = new TreeFormatter();
    treeBuilder.append(ENTRY_COMMIT_REF, commit);
    treeBuilder.append("svn", FileMode.TREE, createSvnLayoutTree(inserter, revBranches));

    new ObjectChecker().checkTree(treeBuilder.toByteArray());
    final ObjectId rootTree = inserter.insert(treeBuilder);

    final CommitBuilder commitBuilder = new CommitBuilder();
    commitBuilder.setAuthor(commit.getAuthorIdent());
    commitBuilder.setCommitter(commit.getCommitterIdent());
    commitBuilder.setMessage("#" + revisionId + ": " + commit.getFullMessage());
    commitBuilder.addParentId(parent);/*from   w  w w  .ja va 2s  . co  m*/
    commitBuilder.setTreeId(rootTree);
    return inserter.insert(commitBuilder);
}