Example usage for org.eclipse.jgit.lib Repository newObjectInserter

List of usage examples for org.eclipse.jgit.lib Repository newObjectInserter

Introduction

In this page you can find the example usage for org.eclipse.jgit.lib Repository newObjectInserter.

Prototype

@NonNull
public ObjectInserter newObjectInserter() 

Source Link

Document

Create a new inserter to create objects in #getObjectDatabase() .

Usage

From source file:org.uberfire.java.nio.fs.jgit.util.commands.SubdirectoryClone.java

License:Apache License

public Git execute() {
    final Git git = new Clone(repoDir, origin, false, branches, credentialsProvider, leaders, hookDir,
            sslVerify).execute().get();/*from w  w w  .j  a v  a 2  s  .  c  o  m*/
    final Repository repository = git.getRepository();

    try (final ObjectReader reader = repository.newObjectReader();
            final ObjectInserter inserter = repository.newObjectInserter()) {
        // Map all transformed commits that are non-empty so that we can properly map parents
        final Map<ObjectId, ObjectId> commitMap = new HashMap<>();
        final RevWalk revWalk = createRevWalk(repository, reader);
        transformBranches(repository, reader, inserter, revWalk, commitMap);
        overrideBranchNames(repository, revWalk, commitMap);

        removeOriginRemote(repository);

        return git;
    } catch (Exception e) {
        String message = String.format("Error cloning origin <%s> with subdirectory <%s>.", origin,
                subdirectory);
        logger.error(message);
        cleanupDir(git.getRepository().getDirectory());
        throw new Clone.CloneException(message, e);
    }
}

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

License:GNU General Public License

@NotNull
private static ObjectId createFirstRevision(@NotNull Repository repository) throws IOException {
    final ObjectInserter inserter = repository.newObjectInserter();
    // Create commit tree.
    final TreeFormatter rootBuilder = new TreeFormatter();
    rootBuilder.append(".gitattributes", FileMode.REGULAR_FILE, insertFile(inserter, "example/_gitattributes"));
    new ObjectChecker().checkTree(rootBuilder.toByteArray());
    final ObjectId rootId = inserter.insert(rootBuilder);
    // Create first commit with message.
    final CommitBuilder commitBuilder = new CommitBuilder();
    commitBuilder.setAuthor(new PersonIdent("", "", 0, 0));
    commitBuilder.setCommitter(new PersonIdent("", "", 0, 0));
    commitBuilder.setMessage("Initial commit");
    commitBuilder.setTreeId(rootId);//from  w  ww  .j ava2s.c om
    final ObjectId commitId = inserter.insert(commitBuilder);
    inserter.flush();
    return commitId;
}

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

License:GNU General Public License

@NotNull
private static ObjectId createFirstRevision(@NotNull Repository repository) throws IOException {
    // Generate UUID.
    final ObjectInserter inserter = repository.newObjectInserter();
    ObjectId uuidId = inserter.insert(Constants.OBJ_BLOB,
            UUID.randomUUID().toString().getBytes(StandardCharsets.UTF_8));
    // Create svn empty tree.
    final ObjectId treeId = inserter.insert(new TreeFormatter());
    // Create commit tree.
    final TreeFormatter rootBuilder = new TreeFormatter();
    rootBuilder.append(ENTRY_ROOT, FileMode.TREE, treeId);
    rootBuilder.append(ENTRY_UUID, FileMode.REGULAR_FILE, uuidId);
    new ObjectChecker().checkTree(rootBuilder.toByteArray());
    final ObjectId rootId = inserter.insert(rootBuilder);
    // Create first commit with message.
    final CommitBuilder commitBuilder = new CommitBuilder();
    commitBuilder.setAuthor(new PersonIdent("", "", 0, 0));
    commitBuilder.setCommitter(new PersonIdent("", "", 0, 0));
    commitBuilder.setMessage("#0: Initial revision");
    commitBuilder.setTreeId(rootId);//ww  w  .ja va  2 s  . c  o m
    final ObjectId commitId = inserter.insert(commitBuilder);
    inserter.flush();
    return commitId;
}