On Mon, Mar 18, 2013 at 08:44:15PM -0700, Jonathan Nieder wrote:
The
config option added by this patch gives them such an option.
I suspect the need for this config option is a sign that the warning
is too eager. After all, the whole idea of the change being safe is
that it shouldn't make a difference the way people usually use git,
no?
In other words, how about the following patches? With them applied,
hopefully no one would mind even if the warning becomes a fatal error.
Clever. I think it would help in my case. I sometimes follow the
workflow you describe in patch 3 (i.e., just working in a subdir), and
sometimes do something more like:
$ vi foo.c
$ cd t
$ vi t-foo.sh
$ ./t-foo.sh
$ git add -u
With your patches, we would continue to warn about the second case, but
I think that is a good thing; git is not doing what I want. But by
reducing the false positives from the first case, I would start to
actually pay attention to the warning more.
Jonathan Nieder (4):
add: make pathless 'add [-u|-A]' warning a file-global function
add: make warn_pathless_add() a no-op after first call
add -u: only show pathless 'add -u' warning when changes exist outside cwd
add -A: only show pathless 'add -A' warning when changes exist outside cwd
I don't see anything obviously wrong with the patches themselves. I
wonder if we would want to change the warning to be more explicit that
yes, there really were files that were impacted by this. And possibly
even list them.
I suspect I would not even mind that becoming the final behavior. I.e.,
going to:
$ cd subdir git add -u
warning: Using 'git add -u' without a pathspec operates only on the
current subdirectory. Updates from the following files were NOT
staged:
file1
file2
other-subdir/file3
now, and then eventually converting the warning into a fatal error (and
demanding that the user use :/ or . as appropriate).
But in the long run, I guess defaulting to :/ will be more convenient,
so there is no point in complaining about the ambiguity forever. And in
that case, since the warning is just a placeholder, I don't know that
it's worth much effort to make it fancier.
-Peff
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html