koreth@xxxxxxxxxxxxx writes: > Signed-off-by: Steven Grimm <koreth@xxxxxxxxxxxxx> > --- > > Or try this instead. It seems to work in my limited testing, but it's > possible this breaks something somewhere. Porcelains that define SUBDIRECTORY_OK but do not do cdup are very valid, and they should not be cd'ed up automatically. They set SUBDIRECTORY_OK for three different reasons: (1) some of them always cdup themselves. git-fetch is the sole example I can think of and I do not think it even needs to. (2) some of them stay in the subdirectory, and rely on the plumbing level to limit the scope of operation with the current directory. The most notable example used to be "git-diff" but that is now a built-in. Also they take filename that could be relative to the current directory. git-commit is an example. (3) some of them are complex mixture of (1) and (2) -- most notable is git-checkout (4) some of them do not care. git-verify-tag is an example. Your patch assumes everybody is either (1) or (4). I would not be surprised if you see breakage everywhere. For example, I think you just broke "git-tag -F <file>". Also I think you surprised users of git-clean (which I do not use personally); it would start removing stuff outside of the current directory. - 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