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

[RFC 0/2] refactor relative_path in path.c

From
Jiang Xin <worldhello.net@gmail.com>
Date
May 15, 2013, 15:18 UTC
Message-ID
<cover.1368630636.git.worldhello.net@gmail.com>
In-Reply-To
<7vvc6ldtx7.fsf@alter.siamese.dyndns.org>
2013/5/15 Junio C Hamano <gitster@pobox.com>:
Show 16 quoted lines
> Jiang Xin <worldhello.net@gmail.com> writes:
>
>> +/*
>> + * Give path as relative to prefix.
>> + *
>> + * This function is a combination of path_relative (in quote.c) and
>> + * relative_path (in path.c)
>> + */
>> +static const char *path_relative(const char *in, const char *prefix)
>> +{
>> +...
>
> Hmph.  Is it possible to reuse the public one (in path.c) here and
> in quote.c, perhaps after enhancing it a bit to serve needs of the
> callers of two existing ones and the new callers of this one?
>

These two patches enhance relative_path() in path.c, so that function relative_path() will return real relative path, not a path strip off the prefix.

The 2nd patch is a bit aggressive, it refactor all related functions, remove unnecessary arguments: len and/or prefix_len.

Please review them. They will be prerequisites for the interactive git-clean patch series.

Jiang Xin (2):
  path.c: refactor relative_path(), not only strip prefix
  quote.c: remove path_relative, use relative_path instead
 builtin/clean.c    | 18 +++++------
 builtin/grep.c     |  4 +--
 builtin/ls-files.c | 13 ++++----
 path.c             | 94 ++++++++++++++++++++++++++++++++++++++++++------------
 quote.c            | 71 +++--------------------------------------
 quote.h            |  7 ++--
 wt-status.c        | 17 +++++-----
 7 files changed, 107 insertions(+), 117 deletions(-)
-- 
1.8.3.rc1.404.ga32c147
Previous: Jiang XinNext: Jiang Xin
Message 7 of 19 in “interactive git-clean”
  1. 0/9 interactive git-cleanJiang Xin, May 14, 2013
  2. 1/9 git-clean: refactor git-clean into two phasesJiang Xin, May 14, 2013
  3. Junio C HamanoMay 14, 2013
  4. Jiang XinMay 15, 2013
  5. Junio C HamanoMay 15, 2013
  6. Jiang XinMay 15, 2013
  7. 0/2 refactor relative_path in path.cJiang Xin, May 15, 2013
  8. 1/2 path.c: refactor relative_path(), not only strip prefixJiang Xin, May 15, 2013
  9. 2/2 quote.c: remove path_relative, use relative_path insteadJiang Xin, May 15, 2013
  10. Junio C HamanoMay 15, 2013
  11. 2/9 git-clean: add support for -i/--interactiveJiang Xin, May 14, 2013
  12. 3/9 git-clean: show items of del_list in columnsJiang Xin, May 14, 2013
  13. 4/9 git-clean: add colors to interactive git-cleanJiang Xin, May 14, 2013
  14. 5/9 git-clean: use a git-add-interactive compatible UIJiang Xin, May 14, 2013
  15. 6/9 git-clean: add filter by pattern interactive actionJiang Xin, May 14, 2013
  16. 7/9 git-clean: add select by numbers interactive actionJiang Xin, May 14, 2013
  17. 8/9 git-clean: add ask each interactive actionJiang Xin, May 14, 2013
  18. 9/9 git-clean: add documentation for interactive git-cleanJiang Xin, May 14, 2013
  19. Junio C HamanoMay 14, 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.