git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v10 05/15] contrib: related: parse committish like format-patch

From
Felipe Contreras <felipe.contreras@gmail.com>
Date
Oct 12, 2013, 07:06 UTC
Message-ID
<1381561584-20529-16-git-send-email-felipe.contreras@gmail.com>
In-Reply-To
<1381561584-20529-1-git-send-email-felipe.contreras@gmail.com>
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
---
 contrib/related/git-related    | 15 +++++++++++++++
 contrib/related/test-related.t | 10 ++++++++++
 2 files changed, 25 insertions(+)
diff --git a/contrib/related/git-related b/contrib/related/git-related
index 4f78304..80e1f17 100755
--- a/contrib/related/git-related
+++ b/contrib/related/git-related
@@ -108,6 +108,21 @@ class Commits
   end
 
   def from_rev_args(args)
+    revs = []
+
+    File.popen(%w[git rev-parse --revs-only --default HEAD --symbolic] + args).each do |rev|
+      revs << rev.chomp
+    end
+
+    case revs.size
+    when 1
+      r = revs[0]
+      r = '^' + r if r[0] != '-'
+      args = [ r, 'HEAD' ]
+    else
+      args = revs
+    end
+
     File.popen(%w[git rev-list --reverse] + args) do |p|
       p.each do |e|
         id = e.chomp
diff --git a/contrib/related/test-related.t b/contrib/related/test-related.t
index b623d69..39b4fe9 100755
--- a/contrib/related/test-related.t
+++ b/contrib/related/test-related.t
@@ -74,4 +74,14 @@ test_expect_success "from committish" "
 	test_cmp expected actual
 "
 
+test_expect_success "from single rev committish" "
+	git related -1 master | sort > actual &&
+	cat > expected <<-EOF &&
+	John Doe <john@doe.com>
+	John Poppins <john@doe.com>
+	Jon Stewart <jon@stewart.com>
+	EOF
+	test_cmp expected actual
+"
+
 test_done
-- 
1.8.4-fc
Previous: Felipe Contreras
Message 16 of 16 in “contrib: related: add option to show commits”
  1. 14/15 contrib: related: add option to show commitsFelipe Contreras, Oct 12, 2013
  2. 00/15 New git-related helperFelipe Contreras, Oct 12, 2013
  3. 07/15 contrib: related: add helper Person classesFelipe Contreras, Oct 12, 2013
  4. 10/15 contrib: related: group persons with same emailFelipe Contreras, Oct 12, 2013
  5. 02/15 contrib: related: add testsFelipe Contreras, Oct 12, 2013
  6. 06/15 contrib: related: print the amount of involvementFelipe Contreras, Oct 12, 2013
  7. 04/15 contrib: related: add option to parse from committishFelipe Contreras, Oct 12, 2013
  8. 15/15 contrib: related: add READMEFelipe Contreras, Oct 12, 2013
  9. 09/15 contrib: related: add support for more rolesFelipe Contreras, Oct 12, 2013
  10. 03/15 contrib: related: add support for multiple patchesFelipe Contreras, Oct 12, 2013
  11. 12/15 contrib: related: add mailmap supportFelipe Contreras, Oct 12, 2013
  12. 13/15 contrib: related: add option parsingFelipe Contreras, Oct 12, 2013
  13. 01/15 Add new git-related helper to contribFelipe Contreras, Oct 12, 2013
  14. 11/15 contrib: related: allow usage on other directoriesFelipe Contreras, Oct 12, 2013
  15. 08/15 contrib: related: show role countFelipe Contreras, Oct 12, 2013
  16. 05/15 contrib: related: parse committish like format-patchFelipe Contreras, Oct 12, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.