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

Re: [PATCH] format-patch: make format.outputDirectory relative to worktree

From
Junio C Hamano <gitster@pobox.com>
Date
Dec 24, 2019, 19:25 UTC
Message-ID
<xmqq36d95xwh.fsf@gitster-ct.c.googlers.com>
In-Reply-To
<9422e4225143b2b908bd1fed9a510b9333bf34a2.1577191015.git.liu.denton@gmail.com>
Denton Liu <liu.denton@gmail.com> writes:
Show 5 quoted lines
> Currently, when format-patch outputs patches to the path specified by
> the `format.outputDirectory` configuration variable, it is relative to
> the current working directory. However, it would make more sense for the
> path to be relative to the worktree if it exists so that patches will be
> placed in one location even if a user were to change directories.

Would it make more sense? If a user is deep in the hierarchy, after running

	$ git format-patch master..

the next thing the user would want to do is to go to the directory and give them final review and edit the patches before sending out. That would involve going up some levels depending on where s/he is, in other words, the location the patches are found would be different and this change makes it a lot more cumbersome to go there with a relative path. The only people who benefit from the change is those who have their working trees at very shallow hierarchy so that it is not cumbersome for them to give the full path to the top of them.

So I think this cuts both ways, and "it would make more sense" is overselling. Besides, those who can easily give the full path to the top of the working tree (because they are short) can spell that short path to outputDirectory configuration variable just once and be done with it, no?

> Rewrite the output directory logic for format-patch so that it will be
> relative to the worktree of the directory. An escape hatch is provided
> for if the previous behaviour is desired by prepending "./" to the
> variable.

Anything that forces existing users to change their existing settings is not an escape hatch. It merely is a regression with a possible workaround.

So I dunno. I probably would have accepted a patch that *adds* outputDirectory configuration that behaves the way you are proposing in this patch if we did not have the variable yet in the system (i.e. three or four years ago), but I am not sure if it is a good idea to change it after these years.

Previous: Denton LiuNext: Denton Liu
Message 2 of 4 in “format-patch: make format.outputDirectory relative to worktree”
  1. format-patch: make format.outputDirectory relative to worktreeDenton Liu, Dec 24, 2019
  2. Junio C HamanoDec 24, 2019
  3. Denton LiuDec 24, 2019
  4. Junio C HamanoDec 25, 2019

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.