emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: project.el: git submodules?


From: Dmitry Gutov
Subject: Re: project.el: git submodules?
Date: Fri, 15 May 2020 00:17:55 +0300
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.7.0

On 14.05.2020 23:13, Dmitry Gutov wrote:
On 14.05.2020 23:01, Stefan Monnier wrote:
+                                    (or
+                                     (let ((default-directory parent))
+                                       (vc-root-dir))
+                                     root)))))

I'm not familiar enough with this code to understand what it does: which
part tests "is it a submodule"?
The removed part.

Or alternatively, which part compares
the location of the two repositories?
The part quoted above. If the parent directory of the root of the 
current Git worktree belongs to a VC worktree (vc-root-dir returns 
non-nil), use that worktree's root. Otherwise, use the root of the 
current repo.
Ah. After re-reading your initial message, I think I understand it 
better. But to compare, we'd need to read the contents of both .git 
files/directories, right?
That, um, sounds more complex than the current solution. And more file 
reads = worse performance over Tramp, so it's not just implementation 
difficulty.
Regarding the particulars, I suppose if .git is a file, and it starts with

gitdir: ../../.git/

where the number of "../" is two or more, then the current dir is probably a submodule.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]