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

[RFC/largely untested/PATCH] sha1_name: interpret ~n as HEAD~n

From
Michael J Gruber <git@drmicha.warpmail.net>
Date
Apr 29, 2011, 15:53 UTC
Message-ID
<6c53916752bf79178113157291fd675ead0804c9.1304092338.git.git@drmicha.warpmail.net>

HEAD~n is often used for rebase invocations etc. Make it use the same default we use in other places, i.e. ~n == HEAD~n.

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
---
I haven't checked the side effects but find this super useful. Stop
me right now if this is a bad idea...
An alternative patch subject for this would have been:
sha1_name: We don't need no hg revision numbers, stupid!
---
 sha1_name.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/sha1_name.c b/sha1_name.c
index 69cd6c8..5d52eac 100644
--- a/sha1_name.c
+++ b/sha1_name.c
@@ -480,7 +480,10 @@ static int get_nth_ancestor(const char *name, int len,
 	struct commit *commit;
 	int ret;
 
-	ret = get_sha1_1(name, len, sha1);
+	if (len)
+		ret = get_sha1_1(name, len, sha1);
+	else
+		ret = get_sha1("HEAD", sha1);
 	if (ret)
 		return ret;
 	commit = lookup_commit_reference(sha1);
-- 
1.7.5.250.g4493b
Next: Junio C Hamano
Message 1 of 17 in “sha1_name: interpret ~n as HEAD~n”
  1. sha1_name: interpret ~n as HEAD~nMichael J Gruber, Apr 29, 2011
  2. Junio C HamanoApr 29, 2011
  3. Michael J GruberMay 1, 2011
  4. Matthieu MoyMay 1, 2011
  5. Junio C HamanoMay 1, 2011
  6. Matthieu MoyMay 1, 2011
  7. Jeff KingApr 29, 2011
  8. Sverre RabbelierApr 29, 2011
  9. Mikael MagnussonMay 7, 2011
  10. Andreas SchwabApr 29, 2011
  11. Junio C HamanoApr 30, 2011
  12. Andreas SchwabApr 30, 2011
  13. Michael J GruberMay 2, 2011
  14. Michael J GruberMay 2, 2011
  15. Junio C HamanoMay 2, 2011
  16. Michael J GruberMay 2, 2011
  17. Matthieu MoyMay 2, 2011

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.