{"thread":{"id":"19146","subject":"[PATCH EGIT 1/2] Implement \"jgit rev-parse\"","startedAt":"2009-05-01T10:36:11Z","lastAt":"2009-05-01T15:14:54Z","messageCount":3,"participants":["Daniel Cheng (aka SDiZ)","Shawn O. Pearce"],"isPatch":true,"patchVersion":1,"patchTotal":2},"messages":[{"id":"112817","messageId":"1241174172-19581-1-git-send-email-git@sdiz.net","threadId":"19146","inReplyTo":null,"subject":"[PATCH EGIT 1/2] Implement \"jgit rev-parse\"","fromName":"Daniel Cheng (aka SDiZ)","fromEmail":"j16sdiz+freenet@gmail.com","sentAt":"2009-05-01T10:36:11Z","receivedAt":"2009-05-01T10:36:11Z","isPatch":true,"sender":{"key":"j16sdiz+freenet@gmail.com","avatar":"https://gravatar.com/avatar/3e796e8a156ee86e305bfc1fbe01608302554ee3b5fa7eb8d1213b8877bfcabd?d=mp&s=160"},"body":"\nSigned-off-by: Daniel Cheng (aka SDiZ) <git@sdiz.net>\n---\n .../services/org.spearce.jgit.pgm.TextBuiltin      |    1 +\n .../src/org/spearce/jgit/pgm/RevParse.java         |   70 ++++++++++++++++++++\n 2 files changed, 71 insertions(+), 0 deletions(-)\n create mode 100644 org.spearce.jgit.pgm/src/org/spearce/jgit/pgm/RevParse.java\n\ndiff --git a/org.spearce.jgit.pgm/src/META-INF/services/org.spearce.jgit.pgm.TextBuiltin b/org.spearce.jgit.pgm/src/META-INF/services/org.spearce.jgit.pgm.TextBuiltin\nindex 2fe6612..7e24516 100644\n--- a/org.spearce.jgit.pgm/src/META-INF/services/org.spearce.jgit.pgm.TextBuiltin\n+++ b/org.spearce.jgit.pgm/src/META-INF/services/org.spearce.jgit.pgm.TextBuiltin\n@@ -13,6 +13,7 @@ org.spearce.jgit.pgm.MergeBase\n org.spearce.jgit.pgm.Push\n org.spearce.jgit.pgm.ReceivePack\n org.spearce.jgit.pgm.RevList\n+org.spearce.jgit.pgm.RevParse\n org.spearce.jgit.pgm.Rm\n org.spearce.jgit.pgm.ShowRev\n org.spearce.jgit.pgm.Tag\ndiff --git a/org.spearce.jgit.pgm/src/org/spearce/jgit/pgm/RevParse.java b/org.spearce.jgit.pgm/src/org/spearce/jgit/pgm/RevParse.java\nnew file mode 100644\nindex 0000000..9cd6e95\n--- /dev/null\n+++ b/org.spearce.jgit.pgm/src/org/spearce/jgit/pgm/RevParse.java\n@@ -0,0 +1,70 @@\n+/*\n+ * Copyright (C) 2009, Daniel Cheng (aka SDiZ) <git@sdiz.net>\n+ *\n+ * All rights reserved.\n+ *\n+ * Redistribution and use in source and binary forms, with or\n+ * without modification, are permitted provided that the following\n+ * conditions are met:\n+ *\n+ * - Redistributions of source code must retain the above copyright\n+ *   notice, this list of conditions and the following disclaimer.\n+ *\n+ * - Redistributions in binary form must reproduce the above\n+ *   copyright notice, this list of conditions and the following\n+ *   disclaimer in the documentation and/or other materials provided\n+ *   with the distribution.\n+ *\n+ * - Neither the name of the Git Development Community nor the\n+ *   names of its contributors may be used to endorse or promote\n+ *   products derived from this software without specific prior\n+ *   written permission.\n+ *\n+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND\n+ * CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES,\n+ * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES\n+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR\n+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT\n+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\n+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\n+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,\n+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF\n+ * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n+ */\n+\n+package org.spearce.jgit.pgm;\n+\n+import java.util.ArrayList;\n+import java.util.List;\n+import java.util.Map;\n+\n+import org.kohsuke.args4j.Argument;\n+import org.kohsuke.args4j.Option;\n+import org.spearce.jgit.lib.ObjectId;\n+import org.spearce.jgit.lib.Ref;\n+import org.spearce.jgit.revwalk.RevWalk;\n+\n+class RevParse extends TextBuiltin {\n+\tRevWalk walk;\n+\n+\t@Option(name = \"--all\")\n+\tboolean all = false;\n+\n+\t@Argument(index = 0, metaVar = \"commit-ish\")\n+\tprivate final List<ObjectId> commits = new ArrayList<ObjectId>();\n+\n+\t@Override\n+\tprotected void run() throws Exception {\n+\t\tif (all) {\n+\t\t\tMap<String, Ref> allRefs = db.getAllRefs();\n+\t\t\tfor (final Ref r : allRefs.values())\n+\t\t\t\tSystem.out.println(r.getObjectId().name());\n+\t\t} else {\n+\t\t\tfor (final ObjectId o : commits)\n+\t\t\t\tSystem.out.println(o.name());\n+\t\t}\n+\t}\n+}\n-- \n1.6.2.1\n"},{"id":"112818","messageId":"1241174172-19581-2-git-send-email-git@sdiz.net","threadId":"19146","inReplyTo":"1241174172-19581-1-git-send-email-git@sdiz.net","subject":"[PATCH EGIT 2/2] Enable \"jgit show-ref\"","fromName":"Daniel Cheng (aka SDiZ)","fromEmail":"j16sdiz+freenet@gmail.com","sentAt":"2009-05-01T10:36:12Z","receivedAt":"2009-05-01T10:36:12Z","isPatch":true,"sender":{"key":"j16sdiz+freenet@gmail.com","avatar":"https://gravatar.com/avatar/3e796e8a156ee86e305bfc1fbe01608302554ee3b5fa7eb8d1213b8877bfcabd?d=mp&s=160"},"body":"\nSigned-off-by: Daniel Cheng (aka SDiZ) <git@sdiz.net>\n---\norg.spearce.jgit.pgm.ShowRef exists, but never enabled.\nthis patch enable this command\n\n\n .../services/org.spearce.jgit.pgm.TextBuiltin      |    1 +\n 1 files changed, 1 insertions(+), 0 deletions(-)\n\ndiff --git a/org.spearce.jgit.pgm/src/META-INF/services/org.spearce.jgit.pgm.TextBuiltin b/org.spearce.jgit.pgm/src/META-INF/services/org.spearce.jgit.pgm.TextBuiltin\nindex 7e24516..3a8cc09 100644\n--- a/org.spearce.jgit.pgm/src/META-INF/services/org.spearce.jgit.pgm.TextBuiltin\n+++ b/org.spearce.jgit.pgm/src/META-INF/services/org.spearce.jgit.pgm.TextBuiltin\n@@ -16,6 +16,7 @@ org.spearce.jgit.pgm.RevList\n org.spearce.jgit.pgm.RevParse\n org.spearce.jgit.pgm.Rm\n org.spearce.jgit.pgm.ShowRev\n+org.spearce.jgit.pgm.ShowRef\n org.spearce.jgit.pgm.Tag\n org.spearce.jgit.pgm.UploadPack\n org.spearce.jgit.pgm.Version\n-- \n1.6.2.1\n"},{"id":"112824","messageId":"20090501151454.GC23604@spearce.org","threadId":"19146","inReplyTo":"1241174172-19581-1-git-send-email-git@sdiz.net","subject":"Re: [PATCH EGIT 1/2] Implement \"jgit rev-parse\"","fromName":"Shawn O. Pearce","fromEmail":"spearce@spearce.org","sentAt":"2009-05-01T15:14:54Z","receivedAt":"2009-05-01T15:14:54Z","isPatch":true,"sender":{"key":"spearce@spearce.org","avatar":"https://avatars.githubusercontent.com/u/34844?v=4"},"body":"\"Daniel Cheng (aka SDiZ)\" <j16sdiz+freenet@gmail.com> wrote:\n>  .../src/org/spearce/jgit/pgm/RevParse.java         |   70 ++++++++++++++++++++\n\nThanks.  I have two remarks, I'm amending them in as they are\ntrivial for me to fix.\n\n> +class RevParse extends TextBuiltin {\n> +\tRevWalk walk;\n\nUnused field.  Deleted.\n\n> +\t@Option(name = \"--all\")\n> +\tboolean all = false;\n> +\n> +\t@Argument(index = 0, metaVar = \"commit-ish\")\n> +\tprivate final List<ObjectId> commits = new ArrayList<ObjectId>();\n> +\n> +\t@Override\n> +\tprotected void run() throws Exception {\n> +\t\tif (all) {\n> +\t\t\tMap<String, Ref> allRefs = db.getAllRefs();\n> +\t\t\tfor (final Ref r : allRefs.values())\n> +\t\t\t\tSystem.out.println(r.getObjectId().name());\n> +\t\t} else {\n> +\t\t\tfor (final ObjectId o : commits)\n> +\t\t\t\tSystem.out.println(o.name());\n\nThese should use the PrintWriter called \"out\" inherited from\nthe TextBuiltin class, not System.out.  Fixed.\n\n-- \nShawn.\n"}]}