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

Re: [PATCH 2/2] refs: loosen restriction on wildcard "*" refspecs

From
Junio C Hamano <gitster@pobox.com>
Date
Jul 22, 2015, 22:04 UTC
Message-ID
<xmqqio9brgrj.fsf@gitster.dls.corp.google.com>
In-Reply-To
<1437599133-13012-3-git-send-email-jacob.e.keller@intel.com>
Jacob Keller <jacob.e.keller@intel.com> writes:
Show 18 quoted lines
> From: Jacob Keller <jacob.keller@gmail.com>
>
> Modify logic of check_refname_component and add a new disposition
> regarding "*". Allow refspecs that contain a single "*" if
> REFNAME_REFSPEC_PATTERN is set. Change the function to pass the flags as
> a pointer, and clear REFNAME_REFSPEC_PATTERN after the first "*" so that
> only a single "*" is accepted.
>
> This loosens restrictions on refspecs by allowing patterns that have
> a "*" within a component instead of only as the whole component. Also
> remove the code that hangled refspec patterns in check_refname_format
> since it is now handled via the check_refname_component logic.
>
> Now refs such as `for/bar*:foo/bar*` and even `foo/bar*:foo/baz*` will
> be accepted. This allows users more control over what is fetched where.
> Since users must modify the default by hand to make use of this
> functionality it is not considered a large risk. Any refspec which
> functioned before shall continue functioning with the new logic.

Thanks. Now I can read the changes to the code in these two commits and see that they both make sense ;-)

The above description seem to use "ref" and "refspec" rather liberally, so I'll rewrite some parts of it to clarify while queuing.

By the way, have you run test suite before sending this (or any previous round of this) patch? This seems to break t5511-refspec.sh for me.

 
Previous: Jacob KellerNext: Jacob Keller
Message 4 of 13 in “refs: cleanup and new behavior”
  1. 0/2 refs: cleanup and new behaviorJacob Keller, Jul 22, 2015
  2. 1/2 refs: cleanup comments regarding check_refname_componentJacob Keller, Jul 22, 2015
  3. 2/2 refs: loosen restriction on wildcard "*" refspecsJacob Keller, Jul 22, 2015
  4. Junio C HamanoJul 22, 2015
  5. Jacob KellerJul 22, 2015
  6. Junio C HamanoJul 23, 2015
  7. Jacob KellerJul 23, 2015
  8. Junio C HamanoJul 23, 2015
  9. Jacob KellerJul 23, 2015
  10. Eric SunshineJul 23, 2015
  11. Junio C HamanoJul 23, 2015
  12. Keller, Jacob EJul 24, 2015
  13. Junio C HamanoJul 24, 2015

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.