List of usage examples for org.eclipse.jgit.api Git commit
public CommitCommand commit()
From source file:br.com.riselabs.cotonet.test.helpers.ConflictBasedRepositoryTestCase.java
License:Open Source License
/** * Creates a collaboration scenario with five developers (Devs A, B, C, D, * and E) and two files (Foo.java and Bar.java). * /* w w w. j a v a2s. c om*/ * @return * @throws Exception */ public MergeScenario setCollaborationScenarioInTempRepository() throws Exception { Git git = Git.wrap(db); RevCommit mergeBaseCommit, lastMasterCommit, lastSideCommit; // first versions of Foo and Bar writeTrashFile("Foo.java", "1"); writeTrashFile("Bar.java", "1"); git.add().addFilepattern("Foo.java").addFilepattern("Bar.java").call(); git.commit().setMessage("initial commit").setAuthor(devs.get("devY")).call(); writeTrashFile("Foo.java", "1\n2\n3\n4\n5\n6\n7\n8\n"); writeTrashFile("Bar.java", "1\n2\n3\n4\n"); git.add().addFilepattern("Foo.java").addFilepattern("Bar.java").call(); mergeBaseCommit = git.commit().setMessage("m0").setAuthor(devs.get("devX")).call(); // Dev E changes Foo writeTrashFile("Foo.java", "1\n2\n3\n4\n5-master\n6\n7\n8\n"); git.add().addFilepattern("Foo.java").call(); git.commit().setMessage("m1").setAuthor(devs.get("devE")).call(); // Dev C changes Foo writeTrashFile("Foo.java", "1\n2\n3\n4-master\n5\n6\n7\n8\n"); writeTrashFile("Bar.java", "1\n2\n3-master\n4-master\n"); git.add().addFilepattern("Foo.java").addFilepattern("Bar.java").call(); git.commit().setMessage("m2").setAuthor(devs.get("devC")).call(); // Dev B changes writeTrashFile("Bar.java", "1\n2\n3\n4-master\n"); git.add().addFilepattern("Bar.java").call(); lastMasterCommit = git.commit().setMessage("m3").setAuthor(devs.get("devB")).call(); // updating the tree with the changes createBranch(mergeBaseCommit, "refs/heads/side"); checkoutBranch("refs/heads/side"); // Dev D changes Foo writeTrashFile("Foo.java", "1\n2\n3\n4-side\n5\n6\n7\n8\n"); git.add().addFilepattern("Foo.java").call(); git.commit().setMessage("s1").setAuthor(devs.get("devD")).call(); // Dev E changes Bar writeTrashFile("Bar.java", "1\n2\n3\n4\n5\n"); git.add().addFilepattern("Bar.java").call(); git.commit().setMessage("s2").setAuthor(devs.get("devE")).call(); // Dev A changes Bar writeTrashFile("Bar.java", "1\n2\n3-side\n4-side\n5\n"); git.add().addFilepattern("Bar.java").call(); lastSideCommit = git.commit().setMessage("s3").setAuthor(devs.get("devA")).call(); return new MergeScenario(null, mergeBaseCommit, lastMasterCommit, lastSideCommit, null, null); }
From source file:br.com.riselabs.cotonet.test.helpers.ConflictBasedRepositoryTestCase.java
License:Open Source License
/** * Merges the scenario created by// w ww . j av a 2 s . c o m * {@code #setCollaborationScenarioInBareRepository()} or * {@code #setCollaborationScenarioInTempRepository()} . * * @throws Exception */ public void setResolvedMergeConflictScenario() throws Exception { MergeScenario ms = setCollaborationScenarioInTempRepository(); Git git = Git.wrap(db); checkoutBranch("refs/heads/master"); // Dev Y changes Bar git.merge().include(ms.getRight()).call(); writeTrashFile("Bar.java", "1\n2\n3-merged\n4-merged\n5\n"); writeTrashFile("Foo.java", "1\n2\n3\n4-merged\n5\n6\n7\n8\n"); git.add().addFilepattern("Bar.java").addFilepattern("Foo.java").call(); git.commit().setMessage("merge s3 into m3").setAuthor(devs.get("devY")).call(); }
From source file:ch.sbb.releasetrain.git.GitRepoImpl.java
License:Apache License
@Override public void addCommitPush() { try {//from ww w . j a va2 s.c o m Git git = gitOpen(); git.add().addFilepattern(".").call(); // status Status status = git.status().call(); // rm the deleted ones if (status.getMissing().size() > 0) { for (String rm : status.getMissing()) { git.rm().addFilepattern(rm).call(); } } // commit and push if needed if (!status.hasUncommittedChanges()) { log.debug("not commiting git, because there are no changes"); return; } git.commit().setMessage("Automatic commit by releasetrain").call(); git.push().setCredentialsProvider(credentialsProvider()).call(); } catch (Exception e) { throw new GitException(e.getMessage(), e); } }
From source file:com.amazonaws.eclipse.elasticbeanstalk.git.AWSGitPushCommand.java
License:Open Source License
private void commitChanges(Repository repository, String message) throws GitAPIException, IOException { Git git = new Git(repository); // Add once (without the update flag) to add new and modified files git.add().addFilepattern(".").call(); // Then again with the update flag to add deleted and modified files git.add().addFilepattern(".").setUpdate(true).call(); git.commit().setMessage(message).call(); }
From source file:com.athomas.androidkickstartr.util.GitHubber.java
License:Apache License
public Repository createCommit(File srcFolder, String applicationName) throws IOException, GitAPIException { Repository repository = repositoryService.createRepository(new Repository().setName(applicationName)); String cloneUrl = repository.getCloneUrl(); InitCommand init = new InitCommand(); init.setDirectory(srcFolder);/*from w w w . j a v a2 s. c o m*/ init.setBare(false); Git git = init.call(); StoredConfig config = git.getRepository().getConfig(); config.setString("remote", "origin", "url", cloneUrl); config.save(); UsernamePasswordCredentialsProvider user = new UsernamePasswordCredentialsProvider(accessToken, ""); git.add().addFilepattern(".").call(); git.commit().setMessage(COMMIT_MESSAGE).call(); git.push().setCredentialsProvider(user).call(); return repository; }
From source file:com.barchart.jenkins.cascade.PluginScmGit.java
License:BSD License
/** * See {@link Git#commit()}/* www . j a v a 2 s . c o m*/ */ public static RevCommit doCommit(final File workspace, final PersonIdent person, final String message) { try { final Git git = Git.open(workspace); final CommitCommand command = git.commit(); if (person != null) { command.setAuthor(person).setCommitter(person); } return command.setMessage(message).call(); } catch (final Throwable e) { throw new RuntimeException(e); } }
From source file:com.cisco.step.jenkins.plugins.jenkow.JenkowWorkflowRepository.java
License:Open Source License
private void addAndCommit(Repository r, String filePattern, String msg) throws IOException { try {// ww w.j av a2 s. c o m Git git = new Git(r); AddCommand cmd = git.add(); cmd.addFilepattern(filePattern); cmd.call(); CommitCommand co = git.commit(); co.setAuthor("Jenkow", "noreply@jenkins-ci.org"); co.setMessage(msg); co.call(); } catch (GitAPIException e) { LOGGER.log(Level.WARNING, "Adding seeded jenkow-repository content to Git failed", e); } }
From source file:com.gitblit.servlet.GitServletTest.java
License:Apache License
@Test public void testAnonymousPush() throws Exception { GitBlitSuite.close(ticgitFolder);//from w ww . j av a 2 s.c o m if (ticgitFolder.exists()) { FileUtils.delete(ticgitFolder, FileUtils.RECURSIVE | FileUtils.RETRY); } RepositoryModel model = repositories().getRepositoryModel("ticgit.git"); model.accessRestriction = AccessRestrictionType.NONE; repositories().updateRepositoryModel(model.name, model, false); CloneCommand clone = Git.cloneRepository(); clone.setURI(MessageFormat.format("{0}/ticgit.git", url)); clone.setDirectory(ticgitFolder); clone.setBare(false); clone.setCloneAllBranches(true); clone.setCredentialsProvider(new UsernamePasswordCredentialsProvider(account, password)); GitBlitSuite.close(clone.call()); assertTrue(true); Git git = Git.open(ticgitFolder); File file = new File(ticgitFolder, "TODO"); OutputStreamWriter os = new OutputStreamWriter(new FileOutputStream(file, true), Constants.CHARSET); BufferedWriter w = new BufferedWriter(os); w.write("// hellol " + new Date().toString() + "\n"); w.close(); git.add().addFilepattern(file.getName()).call(); git.commit().setMessage("test commit").call(); Iterable<PushResult> results = git.push().setPushAll().call(); GitBlitSuite.close(git); for (PushResult result : results) { for (RemoteRefUpdate update : result.getRemoteUpdates()) { assertEquals(Status.OK, update.getStatus()); } } }
From source file:com.gitblit.servlet.GitServletTest.java
License:Apache License
@Test public void testSubfolderPush() throws Exception { GitBlitSuite.close(jgitFolder);//from www .ja va 2s . c om if (jgitFolder.exists()) { FileUtils.delete(jgitFolder, FileUtils.RECURSIVE | FileUtils.RETRY); } CloneCommand clone = Git.cloneRepository(); clone.setURI(MessageFormat.format("{0}/test/jgit.git", url)); clone.setDirectory(jgitFolder); clone.setBare(false); clone.setCloneAllBranches(true); clone.setCredentialsProvider(new UsernamePasswordCredentialsProvider(account, password)); GitBlitSuite.close(clone.call()); assertTrue(true); Git git = Git.open(jgitFolder); File file = new File(jgitFolder, "TODO"); OutputStreamWriter os = new OutputStreamWriter(new FileOutputStream(file, true), Constants.CHARSET); BufferedWriter w = new BufferedWriter(os); w.write("// " + new Date().toString() + "\n"); w.close(); git.add().addFilepattern(file.getName()).call(); git.commit().setMessage("test commit").call(); Iterable<PushResult> results = git.push().setPushAll() .setCredentialsProvider(new UsernamePasswordCredentialsProvider(account, password)).call(); GitBlitSuite.close(git); for (PushResult result : results) { for (RemoteRefUpdate update : result.getRemoteUpdates()) { assertEquals(Status.OK, update.getStatus()); } } }
From source file:com.gitblit.servlet.GitServletTest.java
License:Apache License
@Test public void testPushToFrozenRepo() throws Exception { GitBlitSuite.close(jgitFolder);// w ww. jav a2s . c o m if (jgitFolder.exists()) { FileUtils.delete(jgitFolder, FileUtils.RECURSIVE | FileUtils.RETRY); } CloneCommand clone = Git.cloneRepository(); clone.setURI(MessageFormat.format("{0}/test/jgit.git", url)); clone.setDirectory(jgitFolder); clone.setBare(false); clone.setCloneAllBranches(true); clone.setCredentialsProvider(new UsernamePasswordCredentialsProvider(account, password)); GitBlitSuite.close(clone.call()); assertTrue(true); // freeze repo RepositoryModel model = repositories().getRepositoryModel("test/jgit.git"); model.isFrozen = true; repositories().updateRepositoryModel(model.name, model, false); Git git = Git.open(jgitFolder); File file = new File(jgitFolder, "TODO"); OutputStreamWriter os = new OutputStreamWriter(new FileOutputStream(file, true), Constants.CHARSET); BufferedWriter w = new BufferedWriter(os); w.write("// " + new Date().toString() + "\n"); w.close(); git.add().addFilepattern(file.getName()).call(); git.commit().setMessage("test commit").call(); Iterable<PushResult> results = git.push().setPushAll() .setCredentialsProvider(new UsernamePasswordCredentialsProvider(account, password)).call(); for (PushResult result : results) { for (RemoteRefUpdate update : result.getRemoteUpdates()) { assertEquals(Status.REJECTED_OTHER_REASON, update.getStatus()); } } // unfreeze repo model.isFrozen = false; repositories().updateRepositoryModel(model.name, model, false); results = git.push().setPushAll() .setCredentialsProvider(new UsernamePasswordCredentialsProvider(account, password)).call(); GitBlitSuite.close(git); for (PushResult result : results) { for (RemoteRefUpdate update : result.getRemoteUpdates()) { assertEquals(Status.OK, update.getStatus()); } } }