git@vger.kernel.org mailing list mirror (one of many)
 help / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: Nickolai Belakovski <nbelakovski@gmail.com>
Cc: Philip Oakley <philipoakley@iee.org>,
	git@vger.kernel.org, Jeff King <peff@peff.net>,
	Rafael Ascensão <rafa.almas@gmail.com>,
	Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Subject: Re: [PATCH v5 2/3] branch: Mark and color a branch differently if it is checked out in a linked worktree
Date: Mon, 14 Jan 2019 10:18:21 -0800
Message-ID: <xmqqbm4jw1aq.fsf@gitster-ct.c.googlers.com> (raw)
In-Reply-To: <CAC05384uh_xRboFhxohRq-vKFrTPDnszSaS3vW+BAv30h-Zd+g@mail.gmail.com>

Nickolai Belakovski <nbelakovski@gmail.com> writes:

> Not trying to paint anything one way or another. I found that these
> features got in the way of my workflows and didn't see any immediate
> reason why they had to exist. Thinking about it a bit more, is it
> unreasonable to delete a branch even if it's checked out in a worktree
> as long as the user uses git branch --delete --force or -D?

[For ease of discussion, let's assume that our worktree has a
checkout of branch B, and you are mucking with that branch in
another worktree connected to the same repository]

It is probably a sane enhancement to allow but require --force to
delete branch B in the other worktree.  It is a different matter to
allow "git branch -m AnotherBranch B" run in the other worktree to
overwrite branch B--it will be a disaster if we allowed it and then
committed what we have in our worktree.

> This would
> leave the worktree in a detached head state,

It does not.  It will leave us on branch B that is unborn, and the
next commit will start that branch with a root commit.

> but all the data would be
> untouched. 

As far as the person, who is working in our worktree, is concerned,
she wanted to extend the history of branch B before you deleted it
in another worktree.  But because you deleted B while she was
looking the other way, she ended up creating a root commit, losing
all the history behind that branch.  I'd grant you that "--force"
will give us an excuse when she complains, though.

Most likely, you and she are the same person, but one big point in
the ability to work in multiple worktrees is to allow the user to
switch context and multi-task.  When she gives branch B its own
worktree, she does so because she wants to have a stable place to
work on it, without getting affected by other things she does to the
repository in other worktrees.


  reply index

Thread overview: 64+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-09-27 15:13 [PATCH] branch: colorize branches checked out in a linked working tree the same way as the current branch is colorized Nickolai Belakovski
2018-09-27 15:33 ` Ævar Arnfjörð Bjarmason
2018-09-27 17:46   ` Nickolai Belakovski
     [not found]   ` <CAC05387S9P+w8yqqcjkQDnURYSgQmqtukxS4KvqJu-kDA+_o0g@mail.gmail.com>
2018-09-27 17:59     ` Ævar Arnfjörð Bjarmason
2018-10-02 20:41       ` Johannes Schindelin
2018-09-27 17:58 ` Duy Nguyen
2018-09-27 18:17 ` Jeff King
2018-09-27 18:39   ` Nickolai Belakovski
2018-09-27 18:51     ` Jeff King
2018-09-27 19:28   ` Rafael Ascensão
2018-09-27 19:35     ` Jeff King
2018-09-27 19:41       ` Jeff King
2018-09-27 21:22         ` Junio C Hamano
2018-09-28  1:05           ` Jeff King
2018-09-28  1:28             ` Junio C Hamano
2018-09-27 21:35       ` Rafael Ascensão
2018-09-28  1:07         ` Jeff King
2018-09-27 20:02     ` Ævar Arnfjörð Bjarmason
2018-09-27 20:16       ` Nickolai Belakovski
2018-09-27 20:40         ` Rafael Ascensão
2018-11-11 23:58           ` [PATCH v2 0/2] refactoring branch colorization to ref-filter nbelakovski
2018-11-11 23:58             ` [PATCH v2 1/2] ref-filter: add worktree atom nbelakovski
2018-11-12 10:11               ` Junio C Hamano
2018-11-12 12:22                 ` Jeff King
2018-11-13  1:38                   ` Junio C Hamano
2018-11-21 14:05                     ` Nickolai Belakovski
2018-11-21 14:08                       ` Jeff King
2018-11-12 12:23               ` Jeff King
2018-11-11 23:58             ` [PATCH v2 2/2] branch: Mark and colorize a branch differently if it is checked out in a linked worktree nbelakovski
2018-11-12 10:20               ` Junio C Hamano
2018-11-12 12:14                 ` Jeff King
2018-11-12 18:07                   ` Rafael Ascensão
2018-11-13  1:45                     ` Junio C Hamano
2018-11-13 14:49                     ` Jeff King
2018-11-21 14:07                       ` Nickolai Belakovski
2018-12-16 21:57             ` [PATCH v3 0/3] nbelakovski
2018-12-16 21:57               ` [PATCH v3 1/3] ref-filter: add worktreepath atom nbelakovski
2018-12-18 17:22                 ` Jeff King
2018-12-20  7:09                   ` Nickolai Belakovski
2018-12-20 14:59                     ` Jeff King
2018-12-24  8:47                       ` [PATCH v4 0/3] nbelakovski
2018-12-24  8:47                         ` [PATCH v4 1/3] ref-filter: add worktreepath atom nbelakovski
2019-01-03  5:40                           ` Jeff King
2019-01-03  9:31                             ` Eric Sunshine
2018-12-24  8:47                         ` [PATCH v4 2/3] branch: Mark and color a branch differently if it is checked out in a linked worktree nbelakovski
2018-12-24  8:47                         ` [PATCH v4 3/3] branch: Add an extra verbose output displaying worktree path for refs " nbelakovski
2019-01-03  5:42                           ` Jeff King
2019-01-03  5:22                         ` [PATCH v4 0/3] Jeff King
2018-12-16 21:57               ` [PATCH v3 2/3] branch: Mark and color a branch differently if it is checked out in a linked worktree nbelakovski
2018-12-16 21:57               ` [PATCH v3 3/3] branch: Add an extra verbose output displaying worktree path for refs " nbelakovski
2018-12-18 17:25               ` [PATCH v3 0/3] Jeff King
2019-01-06  0:26 ` [PATCH v5 0/3] nbelakovski
2019-01-06  0:26   ` [PATCH v5 1/3] ref-filter: add worktreepath atom nbelakovski
2019-01-07 18:20     ` Junio C Hamano
2019-01-18 22:17       ` Nickolai Belakovski
2019-01-18 22:20         ` Nickolai Belakovski
2019-01-06  0:26   ` [PATCH v5 2/3] branch: Mark and color a branch differently if it is checked out in a linked worktree nbelakovski
2019-01-07 19:04     ` Junio C Hamano
2019-01-10 21:42       ` Philip Oakley
2019-01-13  1:41         ` Nickolai Belakovski
2019-01-14 18:18           ` Junio C Hamano [this message]
2019-01-18 22:18             ` Nickolai Belakovski
2019-01-06  0:26   ` [PATCH v5 3/3] branch: Add an extra verbose output displaying worktree path for refs " nbelakovski
2019-01-07 19:09     ` Junio C Hamano

Reply instructions:

You may reply publically 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=xmqqbm4jw1aq.fsf@gitster-ct.c.googlers.com \
    --to=gitster@pobox.com \
    --cc=avarab@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=nbelakovski@gmail.com \
    --cc=peff@peff.net \
    --cc=philipoakley@iee.org \
    --cc=rafa.almas@gmail.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

git@vger.kernel.org mailing list mirror (one of many)

Archives are clonable:
	git clone --mirror https://public-inbox.org/git
	git clone --mirror http://ou63pmih66umazou.onion/git
	git clone --mirror http://czquwvybam4bgbro.onion/git
	git clone --mirror http://hjrcffqmbrq6wope.onion/git

Newsgroups are available over NNTP:
	nntp://news.public-inbox.org/inbox.comp.version-control.git
	nntp://ou63pmih66umazou.onion/inbox.comp.version-control.git
	nntp://czquwvybam4bgbro.onion/inbox.comp.version-control.git
	nntp://hjrcffqmbrq6wope.onion/inbox.comp.version-control.git
	nntp://news.gmane.org/gmane.comp.version-control.git

 note: .onion URLs require Tor: https://www.torproject.org/
       or Tor2web: https://www.tor2web.org/

AGPL code for this site: git clone https://public-inbox.org/ public-inbox