Mercurial > hg > mercurial
changeset 654:3daa8e36f8f1
include branch name into log commands
line wrap: on
line diff
--- a/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/ChangeSet.java Mon Sep 30 13:53:01 2013 +0200 +++ b/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/ChangeSet.java Mon Sep 30 15:11:01 2013 +0200 @@ -16,11 +16,14 @@ package jetbrains.buildServer.buildTriggers.vcs.mercurial.command; import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; import java.util.ArrayList; import java.util.Date; import java.util.List; +import static jetbrains.buildServer.buildTriggers.vcs.mercurial.command.HgVcsRoot.DEFAULT_BRANCH_NAME; + /** * Represents Mercurial change set */ @@ -28,6 +31,7 @@ @NotNull private String myUser; @NotNull private Date myTimestamp; private String myDescription; + private String myBranch = DEFAULT_BRANCH_NAME; private List<ChangeSetRevision> myParents = new ArrayList<ChangeSetRevision>(); private List<FileStatus> myModifiedFiles = new ArrayList<FileStatus>(); @@ -110,4 +114,14 @@ public List<FileStatus> getModifiedFiles() { return myModifiedFiles; } + + @NotNull + public String getBranch() { + return myBranch; + } + + public void setBranch(@Nullable String branch) { + if (branch == null || branch.trim().isEmpty() || DEFAULT_BRANCH_NAME.equals(branch)) branch = DEFAULT_BRANCH_NAME; + myBranch = branch; + } }
--- a/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/HgVcsRoot.java Mon Sep 30 13:53:01 2013 +0200 +++ b/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/HgVcsRoot.java Mon Sep 30 15:11:01 2013 +0200 @@ -30,8 +30,7 @@ * Represents mercurial VCS root */ public class HgVcsRoot { - - private static final String DEFAULT_BRANCH_NAME = "default"; + public static final String DEFAULT_BRANCH_NAME = "default"; private final Map<String, String> myVcsRootProperties; private final String myRepository;
--- a/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/LogCommand.java Mon Sep 30 13:53:01 2013 +0200 +++ b/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/LogCommand.java Mon Sep 30 15:11:01 2013 +0200 @@ -36,7 +36,7 @@ public class LogCommand extends VcsRootCommand { private final static Logger LOG = Logger.getInstance(LogCommand.class.getName()); - private final static String ZERO_PARENT_ID = "0000000000000000000000000000000000000000"; + public final static String ZERO_PARENT_ID = "0000000000000000000000000000000000000000"; private final static SAXParserFactory ourSAXFactory = SAXParserFactory.newInstance(); private String myFromId;
--- a/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/MercurialXmlLogParser.java Mon Sep 30 13:53:01 2013 +0200 +++ b/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/MercurialXmlLogParser.java Mon Sep 30 15:11:01 2013 +0200 @@ -34,6 +34,7 @@ public void startElement(String uri, String localName, String qName, Attributes attrs) throws SAXException { if ("logentry".equals(qName)) { myCset = new ChangeSet(getRevision(attrs), getId(attrs)); + myCset.setBranch(attrs.getValue("branch")); } else if ("parent".equals(qName)) { ChangeSetRevision parentCset = new ChangeSetRevision(getRevision(attrs), getId(attrs)); myCset.addParent(parentCset);
--- a/mercurial-server/resources/buildServerResources/fastlog.template Mon Sep 30 13:53:01 2013 +0200 +++ b/mercurial-server/resources/buildServerResources/fastlog.template Mon Sep 30 15:11:01 2013 +0200 @@ -1,7 +1,7 @@ header = '<?xml version="1.0"?>\n<log>\n' footer = '</log>\n' -changeset = '<logentry revision="{rev}" shortnode="{node|short}">\n{parents}<author original="{author|xmlescape}"/>\n<date>{date|date|xmlescape}</date>\n<msg xml:space="preserve">{desc|xmlescape}</msg>\n<paths>\n{files}</paths>\n</logentry>\n' +changeset = '<logentry revision="{rev}" shortnode="{node|short}" branch="{branches}">\n{parents}<author original="{author|xmlescape}"/>\n<date>{date|date|xmlescape}</date>\n<msg xml:space="preserve">{desc|xmlescape}</msg>\n<paths>\n{files}</paths>\n</logentry>\n' file = '<path action="M">{file|xmlescape}</path>\n'
--- a/mercurial-server/resources/buildServerResources/log.no.files.template Mon Sep 30 13:53:01 2013 +0200 +++ b/mercurial-server/resources/buildServerResources/log.no.files.template Mon Sep 30 15:11:01 2013 +0200 @@ -1,6 +1,6 @@ header = '<?xml version="1.0"?>\n<log>\n' footer = '</log>\n' -changeset = '<logentry revision="{rev}" shortnode="{node|short}">\n{parents}<author original="{author|xmlescape}"/>\n<date>{date|date|xmlescape}</date>\n<msg xml:space="preserve">{desc|xmlescape}</msg>\n</logentry>\n' +changeset = '<logentry revision="{rev}" shortnode="{node|short}" branch="{branches}">\n{parents}<author original="{author|xmlescape}"/>\n<date>{date|date|xmlescape}</date>\n<msg xml:space="preserve">{desc|xmlescape}</msg>\n</logentry>\n' parent = '<parent revision="{rev}" node="{node}" shortnode="{node|short}"/>\n'
--- a/mercurial-server/resources/buildServerResources/log.template Mon Sep 30 13:53:01 2013 +0200 +++ b/mercurial-server/resources/buildServerResources/log.template Mon Sep 30 15:11:01 2013 +0200 @@ -1,7 +1,7 @@ header = '<?xml version="1.0"?>\n<log>\n' footer = '</log>\n' -changeset = '<logentry revision="{rev}" shortnode="{node|short}">\n{parents}<author original="{author|xmlescape}"/>\n<date>{date|date|xmlescape}</date>\n<msg xml:space="preserve">{desc|xmlescape}</msg>\n<paths>\n{file_adds}{file_dels}{file_mods}</paths>\n</logentry>\n' +changeset = '<logentry revision="{rev}" shortnode="{node|short}" branch="{branches}">\n{parents}<author original="{author|xmlescape}"/>\n<date>{date|date|xmlescape}</date>\n<msg xml:space="preserve">{desc|xmlescape}</msg>\n<paths>\n{file_adds}{file_dels}{file_mods}</paths>\n</logentry>\n' file_add = '<path action="A">{file_add|xmlescape}</path>\n' file_mod = '<path action="M">{file_mod|xmlescape}</path>\n'
--- a/mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/ServerHgRepo.java Mon Sep 30 13:53:01 2013 +0200 +++ b/mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/ServerHgRepo.java Mon Sep 30 15:11:01 2013 +0200 @@ -58,6 +58,11 @@ return new LogCommand(myCommandSettingsFactory.create(), myHgPath, myWorkingDir, myAuthSettings).withTemplate(myLogTemplate); } + @NotNull + public LogCommand logNoFiles() { + return log().withTemplate(myLogNoFilesTemplate); + } + public LogCommand log(@NotNull HgVcsRoot root) { File template = root.isSubrepo() && !myConfig.reportSubrepoChangesFileStatus() ? myFastLogTemplate : myLogTemplate; return new LogCommand(myCommandSettingsFactory.create(), myHgPath, myWorkingDir, myAuthSettings).withTemplate(template);