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

Re* [RFC PATCH 2/1] Make request-pull able to take a refspec of form local:remote

From
Junio C Hamano <gitster@pobox.com>
Date
Jan 29, 2014, 23:34 UTC
Message-ID
<xmqqfvo6icqf.fsf_-_@gitster.dls.corp.google.com>
In-Reply-To
<xmqqvbx9qgo7.fsf@gitster.dls.corp.google.com>
Junio C Hamano <gitster@pobox.com> writes:
Show 15 quoted lines
> So there are two remaining items, I think.
>
>  - After creating a tags/for-linus signed tag and pushing it to
>    tags/for-linus, asking request-pull to request that tag to be
>    pulled seems to lose the tag message from the output.
>
>  - Docs.
>
> [Footnote]
>
> *1* Not that it is always acceptable to break the existing users as
>     long as they are clueful ones and they are given an escape hatch.
>     But this time I know I won't be in the middle of firestorm like
>     the one we had immediately after 1.6.0, as long as I keep the
>     URL of the message I am responding to in the list archive ;-)

I am not yet doing the docs, but here is a minimal (and I think is the most sensible) fix to the "If I asked a tag to be pulled, I used to get the message from the tag in the output---the updated code no longer does so" problem.

With this fix, the updates to t5150 I queued on top of the two patches can lose a "test_expect_failure".

I would not be surprised if there are other regressions, though [*1*]. I am worried about regressions when the user explicitly asks a ref to be pulled---e.g the command refuses to produce output and instead fails (perhaps because the ambiguity check is overly stricter than it should be), or the command produces output that is different from what we used to produce (this patch is a fix to the problem in that latter category, but there may be other differences the existing tests are not covering).

[Footnote]

*1* No, I do not count "I used to be able to ask 'master' (or implicitly 'HEAD' that I happen to be sitting on) to be pulled and rely on that the command figures out that I have that commit on 'for-linus' in my publish repository, but that feature was removed" as a regression. Removing that cleverness is the point of this series.

-- >8 --
Subject: [PATCH] request-pull: pick up tag message as before

The previous two steps were meant to stop promoting the explicit refname the user gave to the command to a different ref that points at it. Most notably, we no longer substitute a branch name the user used with a name of the tqag that points at the commit at the tip of the branch.

However, they also lost the code that included the message in a tag when the user _did_ ask the tag to be pulled. Resurrect it.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
 git-request-pull.sh | 8 ++++++++
 1 file changed, 8 insertions(+)
diff --git a/git-request-pull.sh b/git-request-pull.sh
index c8ab0e9..93b4135 100755
--- a/git-request-pull.sh
+++ b/git-request-pull.sh
@@ -132,6 +132,14 @@ for you to fetch changes up to %H:
 
 ----------------------------------------------------------------' $headrev &&
 
+if test $(git cat-file -t "$head") = tag
+then
+	git cat-file tag "$head" |
+	sed -n -e '1,/^$/d' -e '/^-----BEGIN PGP /q' -e p
+	echo
+	echo "----------------------------------------------------------------"
+fi &&
+
 if test -n "$branch_name"
 then
 	echo "(from the branch description for $branch_name local branch)"
-- 
1.9-rc1-183-g614c158
Previous: Junio C HamanoNext: brian m. carlson
Message 7 of 13 in “Make request-pull able to take a refspec of form local:remote”
  1. 2/1 Make request-pull able to take a refspec of form local:remoteLinus Torvalds, Jan 23, 2014
  2. Junio C HamanoJan 23, 2014
  3. Linus TorvaldsJan 23, 2014
  4. Junio C HamanoJan 23, 2014
  5. Linus TorvaldsJan 23, 2014
  6. Junio C HamanoJan 24, 2014
  7. Re* [RFC PATCH 2/1] Make request-pull able to take a refspec of form local:remoteJunio C Hamano, Jan 29, 2014
  8. brian m. carlsonJan 30, 2014
  9. Linus TorvaldsJan 30, 2014
  10. Junio C HamanoFeb 25, 2014
  11. Junio C HamanoMar 12, 2014
  12. Eric SunshineMar 12, 2014
  13. Junio C HamanoMar 13, 2014

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.