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

Bug with mv + stash?

From
QHQuin Hoxie <qhoxie@gmail.com>
Date
May 5, 2009, 18:47 UTC
Message-ID
<6e699a4d0905051147m5c495d5erdb608203d0aa69be@mail.gmail.com>

This may or may not be considered a bug, given the empty file, but I thought it would be prudent to report it just in case. When moving/renaming a tracked file, and then creating a new file with the original name, stash loses/deletes the new file. Below is the full transaction to reproduce the behavior.

-- Quin Hoxie

[quin@qmbp /tmp] $ mkdir repo
[quin@qmbp /tmp] $ cd repo
[quin@qmbp /tmp/repo] $ git init
Initialized empty Git repository in /private/tmp/repo/.git/
[quin@qmbp /tmp/repo] $ echo "hello world" > foo
[quin@qmbp /tmp/repo] $ git add foo
[quin@qmbp /tmp/repo] $ git commit -m "added foo"
[master (root-commit)]: created 9ed55f1: "added foo"
 1 files changed, 1 insertions(+), 0 deletions(-)
 create mode 100644 foo
[quin@qmbp /tmp/repo] $ git mv foo bar
[quin@qmbp /tmp/repo] $ git status
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#       renamed:    foo -> bar
#
[quin@qmbp /tmp/repo] $ touch foo
[quin@qmbp /tmp/repo] $ git status
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#       renamed:    foo -> bar
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#       foo
[quin@qmbp /tmp/repo] $ git stash
Saved working directory and index state "WIP on master: 9ed55f1... added foo"
HEAD is now at 9ed55f1 added foo
(To restore them type "git stash apply")
[quin@qmbp /tmp/repo] $ git stash apply
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#       new file:   bar
#
# Changed but not updated:
#   (use "git add/rm <file>..." to update what will be committed)
#   (use "git checkout -- <file>..." to discard changes in working directory)
#
#       deleted:    foo
#
[quin@qmbp /tmp/repo] $ ls
bar
[quin@qmbp /tmp/repo] $
Message 1 of 1 in “Bug with mv + stash?”
  1. Quin HoxieMay 5, 2009

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.