diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/CommitAndLogCommandTests.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/CommitAndLogCommandTests.java index 3d79357bd..d863f45d5 100644 --- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/CommitAndLogCommandTests.java +++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/api/CommitAndLogCommandTests.java @@ -68,6 +68,7 @@ import org.eclipse.jgit.lib.Repository; import org.eclipse.jgit.lib.RepositoryTestCase; import org.eclipse.jgit.revwalk.RevCommit; import org.eclipse.jgit.revwalk.RevWalk; +import org.eclipse.jgit.storage.file.ReflogReader; import org.eclipse.jgit.treewalk.TreeWalk; import org.eclipse.jgit.util.FileUtils; import org.junit.Test; @@ -150,8 +151,8 @@ public class CommitAndLogCommandTests extends RepositoryTestCase { @Test public void testSomeCommits() throws NoHeadException, NoMessageException, - UnmergedPathException, ConcurrentRefUpdateException, - JGitInternalException, WrongRepositoryStateException { + ConcurrentRefUpdateException, JGitInternalException, + WrongRepositoryStateException, IOException { // do 4 commits Git git = new Git(db); @@ -180,6 +181,8 @@ public class CommitAndLogCommandTests extends RepositoryTestCase { l--; } assertEquals(l, -1); + ReflogReader reader = db.getReflogReader(Constants.HEAD); + assertTrue(reader.getLastEntry().getComment().startsWith("commit:")); } // try to do a commit without specifying a message. Should fail! @@ -319,8 +322,8 @@ public class CommitAndLogCommandTests extends RepositoryTestCase { @Test public void testCommitAmend() throws NoHeadException, NoMessageException, - UnmergedPathException, ConcurrentRefUpdateException, - JGitInternalException, WrongRepositoryStateException { + ConcurrentRefUpdateException, JGitInternalException, + WrongRepositoryStateException, IOException { Git git = new Git(db); git.commit().setMessage("first comit").call(); // typo git.commit().setAmend(true).setMessage("first commit").call(); @@ -332,6 +335,9 @@ public class CommitAndLogCommandTests extends RepositoryTestCase { c++; } assertEquals(1, c); + ReflogReader reader = db.getReflogReader(Constants.HEAD); + assertTrue(reader.getLastEntry().getComment() + .startsWith("commit (amend):")); } @Test diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/api/CommitCommand.java b/org.eclipse.jgit/src/org/eclipse/jgit/api/CommitCommand.java index 8d9ce9818..0d7a7da8d 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/api/CommitCommand.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/api/CommitCommand.java @@ -211,8 +211,9 @@ public class CommitCommand extends GitCommand { RevCommit revCommit = revWalk.parseCommit(commitId); RefUpdate ru = repo.updateRef(Constants.HEAD); ru.setNewObjectId(commitId); - ru.setRefLogMessage("commit : " - + revCommit.getShortMessage(), false); + String prefix = amend ? "commit (amend): " : "commit: "; + ru.setRefLogMessage( + prefix + revCommit.getShortMessage(), false); ru.setExpectedOldObjectId(headId); Result rc = ru.forceUpdate();