"Kristoffer Haugsbakk" <code@xxxxxxxxxxxxxxx> writes: >> fatal: '../there' is a main working tree. > > This gives the same error if `there` is a bare repository. Is that > intended? I do not think so. The above is from "git worktree remove" and the candidates to be removed is listed by "git worktree list". I do not know if it is sensible to include the bare repository that the worktrees are attached to in the "list" output, and I do not think it makes sense to accept the path to the directory that is such a bare repository and let the code proceed that far. It should just reject it saying it is *not* a worktree. > PS: Is it correct that the error message says “main working tree” instead > of “main worktree”? (See cc73385cf6 (worktree remove: new command, > 2018-02-12.) I was thinking of spelunking the history further but thought > that I would quickly ask in case I'm missing something obvious. My understanding is that "working tree" refers to what "git checkout" would give you to your "make" and compilers. The "worktree" is a mechanism to allow you to have multiple "working tree"s that are connected to a single repository (be it a bare or a non-bare one). > Certainly. But although this looks like it completely describes everything > that you want, I still think it is good to explicitly mention something > like: > > “ Note that a bare repository may have ... > > Since although this can certainly be inferred from the text, it's good to > have some redundancy when it comes to non-obvious cases. That is fine. I think I've already said everything that I think should be in the final text, and I do not mind if there are anything extra for helping new readers that may be more than absolute minimum. Thanks.