git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: Barret Rennie <barret@brennie.ca>
Cc: "Johannes Sixt" <j6t@kdbg.org>,
	git@vger.kernel.org, "Eric Sunshine" <sunshine@sunshineco.com>,
	"Nguyễn Thái Ngọc Duy" <pclouds@gmail.com>,
	"Michael Rappazzo" <rappazzo@gmail.com>
Subject: Re: [PATCH] builtin/worktree.c: add option for setting worktree name
Date: Sun, 26 Jun 2016 11:15:54 -0700	[thread overview]
Message-ID: <xmqqshvzddet.fsf@gitster.mtv.corp.google.com> (raw)
In-Reply-To: <xmqq1t3ldpdl.fsf@gitster.mtv.corp.google.com> (Junio C. Hamano's message of "Sat, 25 Jun 2016 12:45:10 -0700")

Junio C Hamano <gitster@pobox.com> writes:

> Now, if you do the worktree, you may still want the relative
> structure between these two, i.e. if you want to work on two
> different branch combinations of the whole thing, you would want to
> do this:
>
>     $HOME/xyzzy-1/frotz       - borrow from $HOME/xyzzy/frotz
>     $HOME/xyzzy-1/libs/nitfol - likewise for nitfol
>
>     $HOME/xyzzy-2/frotz       - borrow from $HOME/xyzzy/frotz
>     $HOME/xyzzy-2/libs/nitfol - likewise for nitfol
>
> where xyzzy-$n may be for topic-$n branch both in frotz and nitfol.
>
> And explained that way, it becomes clearer that you would want to
> name $HOME/xyzzy-1/frotz worktree after "topic-1", not the default
> name you would get "frotz" (because the default gives you the leaf
> level name of the newly created worktree).
>
> After the discussion above (which may or may not match what you
> raised this topic for), I think a feature to let you override the
> default name makes sense.
>
> It just needs to be explained better to help the users when the
> feature eventually becomes part of Git.  Also, others (especially
> Duy) may have even better ideas (e.g. instead of having to always
> use --name to give custom name for all worktrees, set a "hint" just
> once to help the logic that comes up with the default name give a
> better name), so while the feature may be desirable, your exact
> implementation may or may not be what we eventually want to adopt.

For example, the "frotz" and "nitfol" repositories (i.e. where their
worktrees borrow their refs and object stores from) could have a
single configuration variable each, i.e.

	(in $HOME/xyzzy/frotz/.git/config)
        [worktree] location = "~/*/frotz"

	(in $HOME/xyzzy/libs/nitfol/.git/config)
        [worktree] location = "~/*/libs/nitfol"

and then the user could do in each of these two repositories

	$ git -C ~/xyzzy/frotz worktree add --by-name xyzzy-1 topic-1
	$ git -C ~/xyzzy/lib/nitfol worktree add --by-name xyzzy-1 topic-1

to get the desired layout instead.

The traditional way may be "create one HERE", and your patch tries
to tweak it to "create one at HERE with this NAME".  The above
attempts to remove the need for specifying the exact location every
time a new worktree is created, and instead let you specify the
systematic way in which you lay out your worktrees based on their
names.


  parent reply	other threads:[~2016-06-26 18:16 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-25  5:15 [PATCH] builtin/worktree.c: add option for setting worktree name Barret Rennie
2016-06-25  6:17 ` Junio C Hamano
2016-06-25  6:28   ` Barret Rennie
2016-06-25  7:15 ` Johannes Sixt
2016-06-25  7:29   ` Barret Rennie
2016-06-25  7:29   ` Barret Rennie
2016-06-25 19:45     ` Junio C Hamano
2016-06-25 20:19       ` Barret Rennie
2016-06-26 18:15       ` Junio C Hamano [this message]
2016-06-27  5:40         ` Barret Rennie
2016-06-27 13:17           ` Junio C Hamano
2016-06-26 23:00       ` Eric Sunshine
2016-06-27  5:52         ` Barret Rennie
2016-06-27 23:11           ` Eric Sunshine
2016-06-29  4:45             ` Barret Rennie
2016-06-25  7:32   ` Barret Rennie

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=xmqqshvzddet.fsf@gitster.mtv.corp.google.com \
    --to=gitster@pobox.com \
    --cc=barret@brennie.ca \
    --cc=git@vger.kernel.org \
    --cc=j6t@kdbg.org \
    --cc=pclouds@gmail.com \
    --cc=rappazzo@gmail.com \
    --cc=sunshine@sunshineco.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).