Hi, "git reset" currently returns 0 (if successful) while "git reset $pathspec" returns 0 iff the index matches HEAD after resetting (on all paths, not just those matching $pathspec). The exit code doesn't seem to be documented. Is there a reason they should behave differently? If not, what would be the better behavior? I don't see when the "git reset $pathspec" behavior" would be useful and it seems safer for any existing scripts out there not to change the status code for "git reset" (w/o paths). Scripts that run "git reset $pathspec" probably already know to ignore (or use?) the exit code. Also, having any non-zero exit code signal failure might actually be useful. Changing "git reset $pathspec" to return 0 on success, regardless of diff between HEAD and index, breaks 10 test cases (in t2013-checkout-submodule.sh and t7102-reset.sh). These seem to do "test_must_fail git reset $pathspec", but I have not been able to find any motivation for expecting the failure. It seems like this behavior has been there at least since the tests were added in 359048d (Add tests for documented features of "git reset"., 2007-09-11), just before reset became built-in. Would a patch to change the exit code from "git reset $pathspec" be appreciated? Martin -- 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