changeset 441:2d3caaaa3e6b

Don't ignore empty commits Empty commits are special and will be filtered out by checkout rules and graph in change log will have holes.
author Dmitry Neverov <dmitry.neverov@jetbrains.com>
date Thu, 31 May 2012 18:04:23 +0400
parents 26b02b419f71
children d0f80762461a
files mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialVcsSupport.java
diffstat 1 files changed, 12 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialVcsSupport.java	Tue May 29 09:05:36 2012 +0200
+++ b/mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialVcsSupport.java	Thu May 31 18:04:23 2012 +0400
@@ -572,12 +572,22 @@
     for (ChangeSetRevision parent : parents) {
       result.addParentRevision(parent.getFullVersion());
     }
-    if (result.getParentRevisions().size() > 1)
-      result.setCanBeIgnored(false);
+    setCanBeIgnored(result);
     return result;
   }
 
 
+  private void setCanBeIgnored(@NotNull ModificationData md) {
+    if (md.getParentRevisions().size() > 1) {
+      //don't ignore merge commits
+      md.setCanBeIgnored(false);
+    } else if (md.getChangeCount() == 0) {
+      //don't ignore empty commits
+      md.setCanBeIgnored(false);
+    }
+  }
+
+
   @NotNull
   private List<ChangeSet> getChangesets(@NotNull final HgVcsRoot root, @NotNull final String fromVersion, @Nullable final String toVersion) throws VcsException {
     if (toVersion == null)