private void pull() throws GitAPIException { Git git = recordGit(Git.wrap(repository)); PullCommand pull = git.pull() .setRebase(true); PullResult result = pull.call(); if (!result.isSuccessful()) { LOGGER.log(Level.WARNING, () -> String.format("Cannot pull from git '%s', branch '%s'", uri.toASCIIString(), branch)); if (LOGGER.isLoggable(Level.FINEST)) { Status status = git.status().call(); LOGGER.finest(() -> "git status cleanliness: " + status.isClean()); if (!status.isClean()) { LOGGER.finest(() -> "git status uncommitted changes: " + status.getUncommittedChanges()); LOGGER.finest(() -> "git status untracked: " + status.getUntracked()); } } } else { LOGGER.fine("Pull was successful."); } LOGGER.finest(() -> "git rebase result: " + result.getRebaseResult().getStatus().name()); LOGGER.finest(() -> "git fetch result: " + result.getFetchResult().getMessages()); }
public static ArrayMemory valueOf(Status value) { ArrayMemory memory = new ArrayMemory(); memory.refOfIndex("added").assign(ArrayMemory.ofStringCollection(value.getAdded())); memory.refOfIndex("changed").assign(ArrayMemory.ofStringCollection(value.getChanged())); memory.refOfIndex("conflicting").assign(ArrayMemory.ofStringCollection(value.getConflicting())); memory.refOfIndex("ignoredNotInIndex").assign(ArrayMemory.ofStringCollection(value.getIgnoredNotInIndex())); memory.refOfIndex("missing").assign(ArrayMemory.ofStringCollection(value.getMissing())); memory.refOfIndex("modified").assign(ArrayMemory.ofStringCollection(value.getModified())); memory.refOfIndex("removed").assign(ArrayMemory.ofStringCollection(value.getRemoved())); memory.refOfIndex("uncommittedChanges").assign(ArrayMemory.ofStringCollection(value.getUncommittedChanges())); memory.refOfIndex("untracked").assign(ArrayMemory.ofStringCollection(value.getUntracked())); memory.refOfIndex("untrackedFolders").assign(ArrayMemory.ofStringCollection(value.getUntrackedFolders())); return memory; }
Set<String> uncommittedChanges = status.getUncommittedChanges(); for(String uncommitted : uncommittedChanges) { System.out.println("Uncommitted: " + uncommitted);
Set<String> uncommittedChanges = status.getUncommittedChanges(); for(String uncommitted : uncommittedChanges) { System.out.println("Uncommitted: " + uncommitted);
if (status.hasUncommittedChanges()) { List<String> list = new ArrayList<>(); list.addAll(status.getUncommittedChanges()); return RebaseResult.uncommittedChanges(list);
private Set<Path> getChangesFromStatus() throws GitAPIException { Set<String> changes = new HashSet<>(); Status status = git.status().call(); if (configuration.uncommited) { changes.addAll(status.getUncommittedChanges()); } if (configuration.untracked) { changes.addAll(status.getUntracked()); } return changes.stream() .map(workTree::resolve) .map(Path::normalize) .filter(this::pathNotExcluded) .collect(Collectors.toSet()); }
public void errorIfNotClean() throws ValidationException { Status status = currentStatus(); boolean isClean = status.isClean(); if (!isClean) { String summary = "Cannot release with uncommitted changes. Please check the following files:"; List<String> message = new ArrayList<String>(); message.add(summary); Set<String> uncommittedChanges = status.getUncommittedChanges(); if (uncommittedChanges.size() > 0) { message.add("Uncommitted:"); for (String path : uncommittedChanges) { message.add(" * " + path); } } Set<String> untracked = status.getUntracked(); if (untracked.size() > 0) { message.add("Untracked:"); for (String path : untracked) { message.add(" * " + path); } } message.add("Please commit or revert these changes before releasing."); throw new ValidationException(summary, message); } }
private boolean localRepoIsDirty(Git git) throws GitAPIException { Status status = git.status().call(); List potentialIssues = new ArrayList(); potentialIssues.addAll(status.getConflicting()); potentialIssues.addAll(status.getIgnoredNotInIndex()); potentialIssues.addAll(status.getAdded()); potentialIssues.addAll(status.getChanged()); potentialIssues.addAll(status.getMissing()); potentialIssues.addAll(status.getModified()); potentialIssues.addAll(status.getRemoved()); potentialIssues.addAll(status.getUncommittedChanges()); potentialIssues.addAll(status.getUntracked()); potentialIssues.addAll(status.getUntrackedFolders()); return !potentialIssues.isEmpty(); }
protected boolean isClean(Git git) throws GitAPIException, IOException { if (git.getRepository().getBranch().equals(BASE_BRANCH)) { Optional<Ref> baseBranch = getOriginHead(git); if (baseBranch.isPresent()) { RevWalk walk = new RevWalk(git.getRepository()); RevCommit baseCommit = walk.parseCommit(getBaseObjectId(git)); RevCommit headCommit = walk.parseCommit(getHead(git).getObjectId()); log.info(String.format("origin/master sha: [%s], head: [%s]", baseCommit.getName(), headCommit.getName())); return baseCommit.equals(headCommit) && git.status().call().isClean(); } else { // there is no origin Status status = git.status().call(); boolean isClean = status.isClean(); if (!isClean) { log.info("Untracked Folders: " + Arrays.toString(status.getUntrackedFolders().toArray())); log.info("Untracked Files: " + Arrays.toString(status.getUntracked().toArray())); log.info("Changed Files: " + Arrays.toString(status.getChanged().toArray())); log.info("Added Files: " + Arrays.toString(status.getAdded().toArray())); log.info("Removed Files: " + Arrays.toString(status.getRemoved().toArray())); log.info("Uncommitted Files: " + Arrays.toString(status.getUncommittedChanges().toArray())); } return isClean; } } return false; }
public synchronized void backup() throws Exception { repo.add().setUpdate(false).addFilepattern(".").call(); Status status = repo.status().setIgnoreSubmodules(SubmoduleWalk.IgnoreSubmoduleMode.ALL).call(); log.debug("status.getUncommittedChanges() = " + status.getUncommittedChanges()); if (!status.getUncommittedChanges().isEmpty()) { for (String missingPath : status.getMissing()) { repo.rm().addFilepattern(missingPath).call(); } log.info("Changes detected in the following files: " + status.getUncommittedChanges()); repo.commit() .setMessage("Backing up data dir") .setAuthor("AppRunner BackupService", "noemail@example.org") .call(); Iterable<PushResult> pushResults = repo.push().call(); for (PushResult pushResult : pushResults) { log.info("Result of pushing to remote: " + pushResult.getRemoteUpdates()); } } else { log.info("No changes to back up"); } }
filesChanged.addAll(gitStatus.getUncommittedChanges()); filesChanged.addAll(gitStatus.getUntracked()); filesChanged.addAll(gitStatus.getUntrackedFolders());
if (status.hasUncommittedChanges()) { List<String> list = new ArrayList<>(); list.addAll(status.getUncommittedChanges()); return RebaseResult.uncommittedChanges(list);
if (status.hasUncommittedChanges()) { List<String> list = new ArrayList<String>(); list.addAll(status.getUncommittedChanges()); return RebaseResult.uncommittedChanges(list);