Sergio <sergio.callegari@xxxxxxxxx> wrote: > Matthias Lederhofer <matled <at> gmx.net> writes: > If I am not wrong, with this we detach the WT from the REPO by letting git know > our working tree if the working tree does not include a repo (.git) directory. > And this is done either: > - by setting the GIT_WORK_TREE environment variable whenever needed > - by passing the --work-tree parameter to git when needed > - by setting the core.worktree config option in the git repo, so that the > repository knows where its default work tree is... > > Is this correct? or am I missing some other ways? That's right, you'd set GIT_DIR and core.worktree/GIT_WORK_TREE. > Would it make sense to make the _WT_ know where its repo is? > > I.e. having something like a .git-repo file a the top dir of a WT, so that when > git is invoked within the WT it can scan up the WT until it finds the .git-repo > file and automatically decide that GIT_WORK_TREE is at the dir containing that > .git-repo file and that GIT_DIR is at the file pointed by that .git-repo? Symlinking the .git directory is quite similar to this and works already without this patch series. Anyway I spontaneously can think of the following use cases, so it might be interesting to add this feature: - The use case Nguyen mentioned, e.g. the filesystem does not support symlinks and for some reason it is not possible to use the git repository next to the working tree. - When executing potentially 'dangerous' programs in the working tree it is safer to have a file pointing to the repository than placing the repository or a symlink to the repository in the working tree (breaking the .git-repo file might be confusing but is not as bad as breaking the repository). - In case of a publicly available working tree it might be ok to publish the path to the repository accidentially (which might happen if the permissions for the .git-repo file are too loose) but there would be no risk that wrong permissions could disclose the repository itself. What I haven't thought through is if it could make sense to honor the GIT_WORK_TREE/core.worktree setting when such a .git-repo file is used or just use the directory containing the file as work tree. - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html