2011/3/16 Carlos MartÃn Nieto <cmn@xxxxxxxx>: > I've been changing this a bit, trying to make all the paths normalized, > but it'll take a bit longer. I'll send a partial patch when I've > finished something worth seeing (for the moment, the test fail if there > is a symlink somewhere in the tree, as I've mixed > real_path/make_absolute_path and absolute_path/make_nonrelative_path a > bit). > > ÂIs it a good idea to normalize the paths? Otherwise, everything could > be replaced by real_path/make_absolute_path (as most calls already are). > As it's transitive and these paths aren't stored permanently (other than > with clone), as long as we agree on one representation, it should be > fine. I think the question is whether it's _necessary_ to do that. Any gain? make_absolute_path() calls are not in critical path, I don't think we should bother much, unless there are bugs like one you fixed in your patch. > ÂIs there a performance hit if we resolve links all the time? If we run > everything through normalize_path(_copy), is it slower than resolving > links? What paths are you talking about? If they are inside $GIT_DIR, we touch them quite often. But there are not many of them (unless you spread loose objects all over the place), resolving links should not be an issue. If they are inside worktree, maybe. Though I'm not sure if we want to normalize all of them. -- Duy -- 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