@Override protected RevCommit read(ObjectId id, BufferedReader reader, TYPE type) throws IOException { Preconditions.checkArgument(TYPE.COMMIT.equals(type), "Wrong type: %s", type.name()); String tree = parseLine(requireLine(reader), "tree"); List<String> parents = newArrayList(Splitter.on(' ').omitEmptyStrings() .split(parseLine(requireLine(reader), "parents"))); RevPerson author = parsePerson(requireLine(reader), "author"); RevPerson committer = parsePerson(requireLine(reader), "committer"); String message = parseMessage(reader); CommitBuilder builder = new CommitBuilder(); builder.setAuthor(author.getName().orNull()); builder.setAuthorEmail(author.getEmail().orNull()); builder.setAuthorTimestamp(author.getTimestamp()); builder.setAuthorTimeZoneOffset(author.getTimeZoneOffset()); builder.setCommitter(committer.getName().orNull()); builder.setCommitterEmail(committer.getEmail().orNull()); builder.setCommitterTimestamp(committer.getTimestamp()); builder.setCommitterTimeZoneOffset(committer.getTimeZoneOffset()); builder.setMessage(message); List<ObjectId> parentIds = Lists.transform(parents, (str) -> ObjectId.valueOf(str)); builder.setParentIds(parentIds); builder.setTreeId(ObjectId.valueOf(tree)); RevCommit commit = builder.build(); return commit; }
builder.setCommitter(authorName); builder.setCommitterEmail(authorEmail); builder.setAuthorTimestamp(timestamp); builder.setAuthor(authorName); builder.setAuthorEmail(authorEmail);
builder.setCommitterTimestamp(timestamp); builder.setCommitterTimeZoneOffset(platform.timeZoneOffset(timestamp)); builder.setAuthorTimestamp(until.getAuthor().getTimestamp());
public static List<RevCommit> createCommits(final int numCommits, @Nullable Platform platform) { LinkedList<RevCommit> commits = new LinkedList<>(); // much faster way of creating several fake commits than running CommitOp N times CommitBuilder builder = platform == null ? new CommitBuilder() : new CommitBuilder(platform); long timeStamp = System.currentTimeMillis(); builder.setAuthor("gabe").setAuthorEmail("gabe@example.com").setCommitter("me") .setCommitterEmail("me@too.com").setCommitterTimestamp(timeStamp) .setCommitterTimeZoneOffset(-1).setAuthorTimestamp(timeStamp) .setAuthorTimeZoneOffset(-3).setTreeId(RevTree.EMPTY_TREE_ID); ObjectId parent = null; for (int i = 1; i <= numCommits; i++) { ++timeStamp; builder.setAuthorTimestamp(timeStamp).setCommitterTimestamp(timeStamp); List<ObjectId> parents = parent == null ? null : ImmutableList.of(parent); RevCommit commit = builder.setParentIds(parents).setMessage("commit " + i).build(); commits.addFirst(commit); parent = commit.getId(); } return commits; } }
/** * @param copy the commit to initialize this builder properties with */ public CommitBuilder(RevCommit copy) { setAuthor(copy.getAuthor().getName().orNull()); setAuthorEmail(copy.getAuthor().getEmail().orNull()); setCommitter(copy.getCommitter().getName().orNull()); setCommitterEmail(copy.getCommitter().getEmail().orNull()); setMessage(copy.getMessage()); setParentIds(copy.getParentIds()); setTreeId(copy.getTreeId()); setAuthorTimestamp(copy.getAuthor().getTimestamp()); setCommitterTimestamp(copy.getCommitter().getTimestamp()); setAuthorTimeZoneOffset(copy.getAuthor().getTimeZoneOffset()); setCommitterTimeZoneOffset(copy.getCommitter().getTimeZoneOffset()); }
private CommitBuilder testCommit(ObjectId treeId, String author, String authorEmail, long authorTimestamp, String committer, String committerEmail, long committerTimestamp, String message, ObjectId... parentIds) { CommitBuilder b = new CommitBuilder(); b.setTreeId(treeId); b.setAuthor(author); b.setAuthorEmail(authorEmail); b.setCommitter(committer); b.setCommitterEmail(committerEmail); b.setMessage(message); b.setAuthorTimestamp(authorTimestamp); b.setCommitterTimestamp(committerTimestamp); if (parentIds != null) { b.setParentIds(Lists.newArrayList(parentIds)); } return b; }
cb.setTreeId(newTreeId); cb.setCommitterTimestamp(committerTime); cb.setAuthorTimestamp(authorTime); cb.setCommitterTimeZoneOffset(committerTimeZoneOffset); cb.setAuthorTimeZoneOffset(authorTimeZoneOffset);
@Test public void testPassingNullToSetParentIds() throws Exception { CommitBuilder b = new CommitBuilder(); b.setAuthor("groldan"); b.setAuthorEmail("groldan@boundlessgeo.com"); b.setCommitter("jdeolive"); b.setCommitterEmail("jdeolive@boundlessgeo.com"); b.setMessage("cool this works"); b.setAuthorTimestamp(1000); ObjectId treeId = RevObjectTestSupport.hashString("fake tree content"); b.setTreeId(treeId); b.setParentIds(null); assertEquals(ImmutableList.of(), b.getParentIds()); }
@Test public void testNoMessage() throws Exception { CommitBuilder b = new CommitBuilder(); b.setAuthor("groldan"); b.setAuthorEmail("groldan@boundlessgeo.com"); b.setCommitter("jdeolive"); b.setCommitterEmail("jdeolive@boundlessgeo.com"); b.setMessage(null); b.setAuthorTimestamp(1000); ObjectId treeId = RevObjectTestSupport.hashString("fake tree content"); b.setTreeId(treeId); ObjectId parentId1 = RevObjectTestSupport.hashString("fake parent content 1"); ObjectId parentId2 = RevObjectTestSupport.hashString("fake parent content 2"); List<ObjectId> parentIds = ImmutableList.of(parentId1, parentId2); b.setParentIds(parentIds); assertEquals(null, b.getMessage()); RevCommit commit2 = b.build(); assertEquals("", commit2.getMessage()); }
String authorEmail = "groldan@boundlessgeo.com"; builder.setAuthorEmail(authorEmail); builder.setAuthorTimestamp(currentTime); builder.setAuthorTimeZoneOffset(timeZoneOffset); String committer = "mleslie";
b.setCommitterTimestamp(1000); b.setCommitterTimeZoneOffset(10); b.setAuthorTimestamp(500); b.setAuthorTimeZoneOffset(-5);
b.setCommitterEmail("jdeolive@boundlessgeo.com"); b.setMessage("cool this works"); b.setAuthorTimestamp(1000);
cb.setTreeId(masterCommit3.getTreeId()); long now = System.currentTimeMillis(); cb.setAuthorTimestamp(now); cb.setCommitterTimestamp(now); mergeCommit = cb.build();