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

Git Bug Report: 'git stash pop' always put new files into staging area, regardless of '--index' option

From
ZDZhuo Cheng Du <zhuo@delphia.com>
Date
Feb 2, 2022, 18:36 UTC
Message-ID
<CA+RO+X5sxqhB3ONx7JseHEyctYBLrzCtwofyQ4+z5cgDzQROoQ@mail.gmail.com>
Hi there,

Please see attached for a bug I encountered while using 'git stash'. Also, is there any bug tracker that I can subscribe to to keep me updated?

Thanks,
-- 
Zhuo Cheng Du

Software Engineer

Delphia

1 833-335-7442
zhuo@delphia.com
www.delphia.com
300-501 Queen St. W., Toronto, ON, M5V 2B4


Thank you for filling out a Git bug report!
Please answer the following questions to help us understand your issue.

What did you do before the bug happened? (Steps to reproduce your issue)
1. Create a brand new file, e.g. 'touch a.py'
2. Add it to worktree with 'git add a.py'
3. stash the file with 'git stash'
4. pop the stashed change with 'git stash pop', WITHOUT the --index option
What did you expect to happen? (Expected behavior)
I expect the file 'a.py' to be in unstaged area since I did not pass the '--index' option to 'git stash pop'
What happened instead? (Actual behavior)
The file is found in staged are are after 'git stash pop', potentially causing merge-conflict in certain scenarios
What's different between what you expected and what actually happened?
I want the file to be found in unstaged area. The 'git stash push'/'git stash pop' combo works as expected if the file is already added to worktree prior to this maneuver. I think the behavior should be consistent for brand new files as well.
Anything else you want to add:

Please review the rest of the bug report below.
You can delete any lines you don't wish to share.


[System Info]
git version:
git version 2.31.0
cpu: x86_64
no commit associated with this build
sizeof-long: 8
sizeof-size_t: 8
shell-path: /bin/sh
uname: Darwin 21.3.0 Darwin Kernel Version 21.3.0: Wed Jan  5 21:37:58 PST 2022; root:xnu-8019.80.24~20/RELEASE_X86_64 x86_64
compiler info: clang: 12.0.0 (clang-1200.0.32.29)
libc info: no libc information available
$SHELL (typically, interactive shell): /bin/zsh


[Enabled Hooks]
Message 1 of 1 in “Git Bug Report: 'git stash pop' always put new files into staging area, regardless of '--index' option”
  1. Zhuo Cheng DuFeb 2, 2022

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.