/** * Create a new commit by explicitly specifying the content tree and the * parents. The commit message is not set and author/committer are set to * the current user. * * @param tree * the tree this commit should capture * @param parents * the list of parent commits * @return a new commit visible only within this merger's RevWalk. * @throws IOException */ private RevCommit createCommitForTree(ObjectId tree, List<RevCommit> parents) throws IOException { CommitBuilder c = new CommitBuilder(); c.setTreeId(tree); c.setParentIds(parents); c.setAuthor(mockAuthor(parents)); c.setCommitter(c.getAuthor()); return RevCommit.parse(walk, c.build()); }
private ObjectId bumpTerm(Repository git, ProposedTimestamp ts, ObjectInserter inserter) throws IOException { CommitBuilder b = new CommitBuilder(); if (!ObjectId.zeroId().equals(acceptedOldIndex)) { try (RevWalk rw = new RevWalk(git)) { b.setTreeId(c.getTree()); b.setParentId(acceptedOldIndex); term = parseTerm(c.getFooterLines(TERM)) + 1; b.setTreeId(inserter.insert(new TreeFormatter())); b.setAuthor(leader.getSystem().newCommitter(ts)); b.setCommitter(b.getAuthor()); b.setMessage(msg.toString()); log.debug("Trying to elect myself " + b.getMessage()); //$NON-NLS-1$
private CommitBuilder createBuilder() { CommitBuilder builder = new CommitBuilder(); PersonIdent author = person; if (author == null) author = new PersonIdent(repo); builder.setAuthor(author); builder.setCommitter(author); return builder; }
CommitBuilder b = new CommitBuilder(); Ref ref = refDb.exactRef(txnCommitted); RefUpdate update = refDb.newUpdate(txnCommitted, ObjectId oldId = ref.getObjectId(); update.setExpectedOldObjectId(oldId); b.setParentId(oldId); oldTreeId = rw.parseCommit(oldId).getTree(); } else { b.setTreeId(tree.writeTree(inserter)); b.setAuthor(new PersonIdent("system", "system", new Date(1481754897254L), TimeZone.getDefault())); b.setCommitter(b.getAuthor()); if (b.getTreeId().equals(oldTreeId)) { return;
builder.setParentId(headCommit); builder.setTreeId(cache.writeTree(inserter)); builder.setMessage(MessageFormat.format(indexMessage, branch, headCommit.abbreviate(7).name(), headCommit.getShortMessage())); untrackedBuilder.finish(); builder.setParentIds(new ObjectId[0]); builder.setTreeId(untrackedDirCache.writeTree(inserter)); builder.setMessage(MessageFormat.format(MSG_UNTRACKED, branch, headCommit.abbreviate(7).name(), headCommit.getShortMessage())); builder.setParentId(headCommit); builder.addParentId(indexCommit); if (untrackedCommit != null) builder.addParentId(untrackedCommit); builder.setMessage(MessageFormat.format( workingDirectoryMessage, branch, headCommit.abbreviate(7).name(), headCommit.getShortMessage())); builder.setTreeId(cache.writeTree(inserter)); commitId = inserter.insert(builder); inserter.flush(); updateStashRef(commitId, builder.getAuthor(), builder.getMessage());
/** * Set the author and committer using {@link #getClock()}. * * @param c * the commit builder to store. */ public void setAuthorAndCommitter(org.eclipse.jgit.lib.CommitBuilder c) { c.setAuthor(new PersonIdent(author, new Date(now))); c.setCommitter(new PersonIdent(committer, new Date(now))); }
/** * Add a parent onto the end of the parent list. * * @param additionalParent * new parent to add onto the end of the current parent list. */ public void addParentId(AnyObjectId additionalParent) { if (parentIds.length == 0) { setParentId(additionalParent); } else { ObjectId[] newParents = new ObjectId[parentIds.length + 1]; System.arraycopy(parentIds, 0, newParents, 0, parentIds.length); newParents[parentIds.length] = additionalParent.copy(); parentIds = newParents; } }
builder.setParentId(headCommit); builder.setTreeId(cache.writeTree(inserter)); builder.setMessage(MessageFormat.format(indexMessage, branch, headCommit.abbreviate(7).name(), headCommit.getShortMessage())); untrackedBuilder.finish(); builder.setParentIds(new ObjectId[0]); builder.setTreeId(untrackedDirCache.writeTree(inserter)); builder.setMessage(MessageFormat.format(MSG_UNTRACKED, branch, headCommit.abbreviate(7).name(), headCommit.getShortMessage())); builder.setParentId(headCommit); builder.addParentId(indexCommit); if (untrackedCommit != null) builder.addParentId(untrackedCommit); builder.setMessage(MessageFormat.format( workingDirectoryMessage, branch, headCommit.abbreviate(7).name(), headCommit.getShortMessage())); builder.setTreeId(cache.writeTree(inserter)); commitId = inserter.insert(builder); inserter.flush(); updateStashRef(commitId, builder.getAuthor(), builder.getMessage());
private CommitBuilder createBuilder() { CommitBuilder builder = new CommitBuilder(); PersonIdent author = person; if (author == null) author = new PersonIdent(repo); builder.setAuthor(author); builder.setCommitter(author); return builder; }
/** * Set the author and committer using {@link #getDate()}. * * @param c * the commit builder to store. */ public void setAuthorAndCommitter(org.eclipse.jgit.lib.CommitBuilder c) { c.setAuthor(new PersonIdent(defaultAuthor, getDate())); c.setCommitter(new PersonIdent(defaultCommitter, getDate())); }
/** * Add a parent onto the end of the parent list. * * @param additionalParent * new parent to add onto the end of the current parent list. */ public void addParentId(AnyObjectId additionalParent) { if (parentIds.length == 0) { setParentId(additionalParent); } else { ObjectId[] newParents = new ObjectId[parentIds.length + 1]; System.arraycopy(parentIds, 0, newParents, 0, parentIds.length); newParents[parentIds.length] = additionalParent.copy(); parentIds = newParents; } }
static void commitNoteMap(Repository r, String ref, RevWalk walk, NoteMap map, RevCommit notesCommit, ObjectInserter inserter, String msg) throws IOException { // commit the note CommitBuilder builder = new CommitBuilder(); builder.setTreeId(map.writeTree(inserter)); builder.setAuthor(new PersonIdent(r)); builder.setCommitter(builder.getAuthor()); builder.setMessage(msg); if (notesCommit != null) builder.setParentIds(notesCommit); ObjectId commit = inserter.insert(builder); inserter.flush(); RefUpdate refUpdate = r.updateRef(ref); if (notesCommit != null) refUpdate.setExpectedOldObjectId(notesCommit); else refUpdate.setExpectedOldObjectId(ObjectId.zeroId()); refUpdate.setNewObjectId(commit); refUpdate.update(walk); }
private ObjectId bumpTerm(Repository git, ObjectInserter inserter) throws IOException { CommitBuilder b = new CommitBuilder(); if (!ObjectId.zeroId().equals(acceptedOldIndex)) { try (RevWalk rw = new RevWalk(git)) { RevCommit c = rw.parseCommit(acceptedOldIndex); b.setTreeId(c.getTree()); b.setParentId(acceptedOldIndex); term = parseTerm(c.getFooterLines(TERM)) + 1; } } else { term = 1; b.setTreeId(inserter.insert(new TreeFormatter())); } StringBuilder msg = new StringBuilder(); msg.append(KetchConstants.TERM.getName()) .append(": ") //$NON-NLS-1$ .append(term); String tag = leader.getSystem().newLeaderTag(); if (tag != null && !tag.isEmpty()) { msg.append(' ').append(tag); } b.setAuthor(leader.getSystem().newCommitter()); b.setCommitter(b.getAuthor()); b.setMessage(msg.toString()); if (log.isDebugEnabled()) { log.debug("Trying to elect myself " + b.getMessage()); //$NON-NLS-1$ } return inserter.insert(b); }
builder.setParentId(headCommit); builder.setTreeId(cache.writeTree(inserter)); builder.setMessage(MessageFormat.format(indexMessage, branch, headCommit.abbreviate(7).name(), headCommit.getShortMessage())); untrackedBuilder.finish(); builder.setParentIds(new ObjectId[0]); builder.setTreeId(untrackedDirCache.writeTree(inserter)); builder.setMessage(MessageFormat.format(MSG_UNTRACKED, branch, headCommit.abbreviate(7).name(), headCommit.getShortMessage())); builder.setParentId(headCommit); builder.addParentId(indexCommit); if (untrackedCommit != null) builder.addParentId(untrackedCommit); builder.setMessage(MessageFormat.format( workingDirectoryMessage, branch, headCommit.abbreviate(7).name(), headCommit.getShortMessage())); builder.setTreeId(cache.writeTree(inserter)); commitId = inserter.insert(builder); inserter.flush(); updateStashRef(commitId, builder.getAuthor(), builder.getMessage());
private CommitBuilder createBuilder() { CommitBuilder builder = new CommitBuilder(); PersonIdent author = person; if (author == null) author = new PersonIdent(repo); builder.setAuthor(author); builder.setCommitter(author); return builder; }
/** * Set the author and committer using {@link #getDate()}. * * @param c * the commit builder to store. */ public void setAuthorAndCommitter(org.eclipse.jgit.lib.CommitBuilder c) { c.setAuthor(new PersonIdent(defaultAuthor, getDate())); c.setCommitter(new PersonIdent(defaultCommitter, getDate())); }
/** * Add a parent onto the end of the parent list. * * @param additionalParent * new parent to add onto the end of the current parent list. */ public void addParentId(AnyObjectId additionalParent) { if (parentIds.length == 0) { setParentId(additionalParent); } else { ObjectId[] newParents = new ObjectId[parentIds.length + 1]; System.arraycopy(parentIds, 0, newParents, 0, parentIds.length); newParents[parentIds.length] = additionalParent.copy(); parentIds = newParents; } }
CommitBuilder b = new CommitBuilder(); b.setTreeId(batch.get(0).getTree()); b.setParentIds(parents); b.setAuthor(tmpAuthor(batch)); b.setCommitter(b.getAuthor()); tip = inserter.insert(b); end = start;
private ObjectId bumpTerm(Repository git, ProposedTimestamp ts, ObjectInserter inserter) throws IOException { CommitBuilder b = new CommitBuilder(); if (!ObjectId.zeroId().equals(acceptedOldIndex)) { try (RevWalk rw = new RevWalk(git)) { b.setTreeId(c.getTree()); b.setParentId(acceptedOldIndex); term = parseTerm(c.getFooterLines(TERM)) + 1; b.setTreeId(inserter.insert(new TreeFormatter())); b.setAuthor(leader.getSystem().newCommitter(ts)); b.setCommitter(b.getAuthor()); b.setMessage(msg.toString()); log.debug("Trying to elect myself " + b.getMessage()); //$NON-NLS-1$
private boolean apply(List<Command> todo) throws IOException { if (!tree.apply(todo)) { // apply set rejection information on commands. return false; } Repository repo = refdb.getRepository(); try (ObjectInserter ins = repo.newObjectInserter()) { CommitBuilder b = new CommitBuilder(); b.setTreeId(tree.writeTree(ins)); if (parentTreeId.equals(b.getTreeId())) { for (Command c : todo) { c.setResult(OK); } return true; } if (!parentCommitId.equals(ObjectId.zeroId())) { b.setParentId(parentCommitId); } author = getRefLogIdent(); if (author == null) { author = new PersonIdent(repo); } b.setAuthor(author); b.setCommitter(author); b.setMessage(getRefLogMessage()); newCommitId = ins.insert(b); ins.flush(); } return true; }