git/list[1] front-page[2] threads[3] people[4] search[5] about
 

git reset <path> returns unwanted failure status

From
SLStephen Leake <stephen_leake@stephe-leake.org>
Date
Feb 28, 2014, 16:40 UTC
Message-ID
<85wqgfxkb4.fsf@stephe-leake.org>
The use case:
I'm doing a 'git stash pop'; it had conflicts. At this point, 'git status' shows:

# On branch master # Changes to be committed: # (use "git reset HEAD <file>..." to unstage) # # modified: Target.java # # Unmerged paths: # (use "git reset HEAD <file>..." to unstage) # (use "git add/rm <file>..." as appropriate to mark resolution) # # both modified: DriveByInches.java # # Changes not staged for commit: # (use "git add <file>..." to update what will be committed) # (use "git checkout -- <file>..." to discard changes in working directory) # # modified: CommandBasedAutonomous.java # # Untracked files: # (use "git add <file>..." to include in what will be committed) # # AerialAssist2014/src/org/usfirst/frc1939/AerialAssist2014/Autonomous/

As part of the conflict resolution, I decide to unstage Target.java:

stephe@takver$ git reset Target.java Unstaged changes after reset: M CommandBasedAutonomous.java U DriveByInches.java M Target.java stephe@takver$ echo $? 1

The issue is the error status and the messages about other files.

If I had not specified a path to 'git reset', the error status would make sense; those files were not reset. However, since the file I specified was reset, there should be no error.

Similarly, if I specify no path to a git command, I expect warning messages about files in the workspace that might need attention. However, if I do specify a path, I expect warning messages about files in that path only.

This can be stated more concisely if the default path is considered to be "*" (and recursive); don't error if the operation succeeded for all files in the path; don't warn about files not in the path.

-- 
-- Stephe
Message 1 of 1 in “git reset <path> returns unwanted failure status”
  1. Stephen LeakeFeb 28, 2014

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.