List of usage examples for org.eclipse.jgit.revwalk RevSort COMMIT_TIME_DESC
RevSort COMMIT_TIME_DESC
To view the source code for org.eclipse.jgit.revwalk RevSort COMMIT_TIME_DESC.
Click Source Link
From source file:boa.datagen.scm.GitConnector.java
License:Apache License
@Override public String getLastCommitId() { if (lastCommitId == null) { revwalk.reset();//from w ww.j av a 2s .co m try { revwalk.markStart(revwalk.parseCommit(repository.resolve(Constants.HEAD))); revwalk.sort(RevSort.COMMIT_TIME_DESC); lastCommitId = revwalk.next().getId().toString(); } catch (final Exception e) { if (debug) System.err.println("Git Error getting last commit for " + path + ". " + e.getMessage()); } } return lastCommitId; }
From source file:boa.datagen.scm.GitConnector.java
License:Apache License
@Override protected void setRevisions() { try {//from w ww .ja va2s . com revwalk.reset(); revwalk.markStart(revwalk.parseCommit(repository.resolve(Constants.HEAD))); revwalk.sort(RevSort.TOPO, true); revwalk.sort(RevSort.COMMIT_TIME_DESC, true); revwalk.sort(RevSort.REVERSE, true); revisions.clear(); revisionMap = new HashMap<String, Integer>(); for (final RevCommit rc : revwalk) { final GitCommit gc = new GitCommit(repository, this); gc.setId(rc.getName()); gc.setAuthor(rc.getAuthorIdent().getName()); gc.setCommitter(rc.getCommitterIdent().getName()); gc.setDate(new Date(((long) rc.getCommitTime()) * 1000)); gc.setMessage(rc.getFullMessage()); gc.getChangeFiles(this.revisionMap, rc); revisionMap.put(gc.id, revisions.size()); revisions.add(gc); } } catch (final IOException e) { if (debug) System.err.println("Git Error getting parsing HEAD commit for " + path + ". " + e.getMessage()); } }
From source file:com.google.gerrit.server.git.MergeOp.java
License:Apache License
private void openRepository(Project.NameKey name) throws MergeException, NoSuchProjectException { try {/* w w w . ja v a2s . c om*/ repo = repoManager.openRepository(name); } catch (RepositoryNotFoundException notFound) { throw new NoSuchProjectException(name, notFound); } catch (IOException err) { String m = "Error opening repository \"" + name.get() + '"'; throw new MergeException(m, err); } rw = CodeReviewCommit.newRevWalk(repo); rw.sort(RevSort.TOPO); rw.sort(RevSort.COMMIT_TIME_DESC, true); canMergeFlag = rw.newFlag("CAN_MERGE"); inserter = repo.newObjectInserter(); }
From source file:GitBackend.GitAPI.java
License:Apache License
private void getCommitByExactDate(Repository repo, Date execDate, String path) { RevWalk walk = new RevWalk(repo); try {//from ww w . j a va 2 s . co m walk.markStart(walk.parseCommit(repo.resolve(Constants.HEAD))); walk.sort(RevSort.COMMIT_TIME_DESC); walk.setTreeFilter(PathFilter.create(path)); for (RevCommit commit : walk) { if (commit.getCommitterIdent().getWhen().equals(execDate)) { // this is the commit you are looking for walk.parseCommit(commit); System.out.println("Commit found: " + commit.getName()); break; } } walk.close(); } catch (IOException e) { e.printStackTrace(); } }
From source file:kr.re.ec.grigit.graph.ui.GrigitGraph.java
License:Eclipse Distribution License
@Override protected RevWalk createWalk() { // if (objects) // logger.info(CLIText.get().cannotUseObjectsWithGlog); final PlotWalk w = new PlotWalk(db); w.sort(RevSort.BOUNDARY, true);/*from ww w . j a v a 2 s .c om*/ w.sort(RevSort.COMMIT_TIME_DESC, true); return w; }
From source file:kr.re.ec.grigit.graph.ui.RevWalker.java
License:Eclipse Distribution License
void enableDateOrder(final boolean on) { enableRevSort(RevSort.COMMIT_TIME_DESC, on); }
From source file:net.morimekta.gittool.GitTool.java
License:Apache License
public Optional<RevCommit> commitOf(Repository repository, String branch) throws IOException { try (RevWalk revWalk = new RevWalk(repository)) { ObjectId oid = repository.resolve(refName(branch)); revWalk.markStart(revWalk.parseCommit(oid)); revWalk.sort(RevSort.COMMIT_TIME_DESC); return Optional.ofNullable(ImmutableList.copyOf(revWalk).get(0)); }//from w w w.ja va 2s. c om }
From source file:org.apache.maven.scm.provider.git.jgit.command.JGitUtils.java
License:Apache License
/** * Get a list of commits between two revisions. * * @param repo the repository to work on * @param sortings sorting/*from w w w. ja v a 2 s . c om*/ * @param fromRev start revision * @param toRev if null, falls back to head * @param fromDate from which date on * @param toDate until which date * @param maxLines max number of lines * @return a list of commits, might be empty, but never <code>null</code> * @throws IOException * @throws MissingObjectException * @throws IncorrectObjectTypeException */ public static List<RevCommit> getRevCommits(Repository repo, RevSort[] sortings, String fromRev, String toRev, final Date fromDate, final Date toDate, int maxLines) throws IOException, MissingObjectException, IncorrectObjectTypeException { List<RevCommit> revs = new ArrayList<RevCommit>(); RevWalk walk = new RevWalk(repo); ObjectId fromRevId = fromRev != null ? repo.resolve(fromRev) : null; ObjectId toRevId = toRev != null ? repo.resolve(toRev) : null; if (sortings == null || sortings.length == 0) { sortings = new RevSort[] { RevSort.TOPO, RevSort.COMMIT_TIME_DESC }; } for (final RevSort s : sortings) { walk.sort(s, true); } if (fromDate != null && toDate != null) { //walk.setRevFilter( CommitTimeRevFilter.between( fromDate, toDate ) ); walk.setRevFilter(new RevFilter() { @Override public boolean include(RevWalk walker, RevCommit cmit) throws StopWalkException, MissingObjectException, IncorrectObjectTypeException, IOException { int cmtTime = cmit.getCommitTime(); return (cmtTime >= (fromDate.getTime() / 1000)) && (cmtTime <= (toDate.getTime() / 1000)); } @Override public RevFilter clone() { return this; } }); } else { if (fromDate != null) { walk.setRevFilter(CommitTimeRevFilter.after(fromDate)); } if (toDate != null) { walk.setRevFilter(CommitTimeRevFilter.before(toDate)); } } if (fromRevId != null) { RevCommit c = walk.parseCommit(fromRevId); c.add(RevFlag.UNINTERESTING); RevCommit real = walk.parseCommit(c); walk.markUninteresting(real); } if (toRevId != null) { RevCommit c = walk.parseCommit(toRevId); c.remove(RevFlag.UNINTERESTING); RevCommit real = walk.parseCommit(c); walk.markStart(real); } else { final ObjectId head = repo.resolve(Constants.HEAD); if (head == null) { throw new RuntimeException("Cannot resolve " + Constants.HEAD); } RevCommit real = walk.parseCommit(head); walk.markStart(real); } int n = 0; for (final RevCommit c : walk) { n++; if (maxLines != -1 && n > maxLines) { break; } revs.add(c); } return revs; }
From source file:org.eclipse.egit.internal.relengtools.ShowInfoHandler.java
License:Open Source License
public static RevCommit getLatestCommitFor(RepositoryMapping mapping, Repository repo, IProject project) throws Exception { final RevWalk walk = new RevWalk(repo); walk.reset();/* www. j a v a 2s.c o m*/ walk.sort(RevSort.TOPO, true); walk.sort(RevSort.COMMIT_TIME_DESC, true); walk.setTreeFilter( AndTreeFilter.create(TreeFilter.ANY_DIFF, PathFilter.create(mapping.getRepoRelativePath(project)))); final ObjectId start = repo.resolve(Constants.HEAD); walk.markStart(walk.parseCommit(start)); // I should only be able to see commits that contain files // where project is a path prefix final RevCommit commit = walk.next(); return commit; }
From source file:org.eclipse.egit.ui.internal.actions.TagAction.java
License:Open Source License
private RevWalk getRevCommits() { RevWalk revWalk = new RevWalk(repo); revWalk.sort(RevSort.COMMIT_TIME_DESC, true); revWalk.sort(RevSort.BOUNDARY, true); try {//www. j a va 2 s . c o m AnyObjectId headId = repo.resolve(Constants.HEAD); if (headId != null) revWalk.markStart(revWalk.parseCommit(headId)); } catch (IOException e) { ErrorDialog.openError(getShell(), UIText.TagAction_errorDuringTagging, UIText.TagAction_errorWhileGettingRevCommits, new Status(IStatus.ERROR, Activator.getPluginId(), e.getMessage(), e)); } return revWalk; }