On Friday 20 July 2007, David Kastrup wrote: > Johan Herland <johan@xxxxxxxxxxx> writes: > > > AFAICS, from a high-level POV, we're pretty much in agreement on the > > following points: > > > > 1. Git should be able to track directories. > > > > 2. Tracked directories should be kept alive, even if empty. > > > > 3. Git must not necessarily track _all_ directories. > > > > > > Conversely, we seem to disagree on these points: > > > > 4. Whether or not git should track directories by default. You say > > yes, I say no. > > Element of least surprise. But since my proposal allows easy and > intuitive declaration of the preference at user, project, and > directory level without one choice messing with the choice of other > projects and contributors with mixed preferences, this is quite > unimportant. > > We are in agreement that adding or removing the tracking explicitly > for a single directory might be useful to have. But it can't be the > only way. As long as you can add/remove tracking recursively for a whole (sub)tree, I don't see what's the problem. Of course, if you want to change the default behaviour, you should be able either set a config variable somewhere, or - as a last resort - alias git-add and git-rm to always supply the appropriate command-line option. > > 5. How the tracking of directories should be implemented in git's > > object database. I want to keep the index/tree as-is except for > > adding directory entries (w/mode 040000) for the tracked directories > > only. You seem to want to add directory entries for _all_ > > directories and then additional "." entries for directories you > > don't want deleted if/when empty. > > No. I don't want to change _anything_ for untracked directories. > They are, as previously, implied by the contents and have a "tree" > entry for efficiency reasons. Nothing new here. > > The directory mode entries are named "." and are for tracked > directories only. Ok. So our difference in opinion on implementation is even smaller than I imagined; basically only whether the directory is tracked by a mode "040000" entry, or by a "." entry. > > Am I making sense, or have I misunderstood our misunderstandings? > > The latter. You are violently arguing for what I outlined. Which > probably shows that I am not the best at explaining my ideas, and that > it reflects badly upon them. That probably goes for both of us :) Well, as long as we have this clarified, I don't see much point in continuing this part of the thread. I feel confident that the git community as a whole will converge on the best technical solution, once it surfaces. Have fun! ...Johan -- Johan Herland, <johan@xxxxxxxxxxx> www.herland.net - 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