Thread (37 messages) flat view 37 messages, 5 authors, 2018-03-05

Re: [PATCH 6/7] worktree remove: new command

From: Duy Nguyen <hidden>
Date: 2018-02-12 09:26:53

On Fri, Feb 2, 2018 at 6:47 PM, Eric Sunshine [off-list ref] wrote:
On Wed, Jan 24, 2018 at 4:53 AM, Nguyễn Thái Ngọc Duy [off-list ref] wrote:
quoted
This command allows to delete a worktree. Like 'move' you cannot
remove the main worktree, or one with submodules inside [1].
[...]
Signed-off-by: Nguyễn Thái Ngọc Duy <redacted>
---
diff --git a/builtin/worktree.c b/builtin/worktree.c
@@ -688,6 +689,132 @@ static int move_worktree(int ac, const char **av, const char *prefix)
+static void check_clean_worktree(struct worktree *wt,
+                                const char *original_path)
+{
+       [...]
+       validate_no_submodules(wt);
It's slightly strange seeing worktree validation in a function
checking whether the worktree is clean since submodule validation
isn't an issue of cleanliness. I'd have expected the caller to invoke
it instead:

    int remove_worktree(...) {
        ...
        if (!force) {
            validate_no_submodules(wt);
            check_clean_worktree(wt, av[0]);
        }
        ...
    }

On the other hand, I could imagine it being called here as appropriate
if submodule validation eventually also checks submodule cleanliness
as hinted by the commit message.
Yes I basically consider all submodules dirty until somebody sorts
them out. I'll add a comment here to clarify this.
-- 
Duy
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help