It seems that "git add foo<TAB>" completes to files (1) whose names match 'foo*', (2) that are not ignored (i.e. "foobar~" will not be offered for Emacs users), and (3) are different from the index. The last one is somewhat frustrating at times. For example, I keep a backup version of whats-cooking.txt in the working tree that I use to manage the 'todo' branch as whats-cooking.txt+, and this is not explicitly "ignored". Most of the time, I have changes to the real file, so $ git add whats<TAB> would complete to "whats-cooking.txt" (because there are two candidates, "whats-cooking.txt" and "whats-cooking.txt+", and the first completion is done up to the common prefix) and everything is good. Immediately after I did "git add whats-cooking.txt", however, because of (3), the completion for $ git add whats<TAB> offers "whats-cooking.txt+", because that is the only candidate that passes all three criteria. This is quite annoying and even dangerous, because it does not happen most of the time. I am wondering if there is a downside to removing (3) from the completion logic. Discuss. Thanks. -- 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