Re: Confusing `stash apply` behavior
- From
Tim Visher <tim.visher@gmail.com>
- Date
- Mar 11, 2009, 12:45 UTC
- Message-ID
- <c115fd3c0903110545o67b00fe2u3bb4924b5c84c0ce@mail.gmail.com>
- In-Reply-To
- <20090311190217.6117@nanako3.lavabit.com>
On Wed, Mar 11, 2009 at 6:02 AM, Nanako Shiraishi <nanako3@lavabit.com> wrote:
Show 37 quoted lines
> Quoting Tim Visher <tim.visher@gmail.com>:
>
>> When I do `git stash apply`, it deletes the file I'm working with.
>>
>> $ ls
>> featureList.txt* keycontrol.mdb*
>>
>> $ git show stash@{0}
>> commit b3c0f4b9b3c3ef7741a03fb27174f5838abc939d
>> Merge: 9fb9886 112bba9
>> Author: Tim Visher <timothy.visher@fms.treas.gov>
>> Date: Tue Mar 10 15:25:04 2009 -0400
>>
>> WIP on dev: 9fb9886 Added DB Lock file to .gitignore. EOM
>>
>> diff --cc keycontrol.mdb
>> index 68a9bac,68a9bac..0000000
>> --- a/keycontrol.mdb
>> +++ b/keycontrol.mdb
>>
>> $ git stash apply
>> Removing keycontrol.mdb
>> # On branch refactoring
>> # 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: keycontrol.mdb
>> #
>> no changes added to commit (use "git add" and/or "git commit -a")
>>
>> Considering the output of `git show` I would expect that the contents
>> of the stash are, well, what I expect them to be: a new version of
>> keycontrol.mdb.
>
> The 'index' line in your 'diff --cc' output says that back when you created that stash, the HEAD and your index both held a blob object 68a9bac and your working tree didn't have that file, ie, removed. It is very natural that the file is removed when you apply that stash.Huh. I don't know how that would have happened, but I guess I should have been more careful with the stash command. Oh well.
Thanks for your help!
-- In Christ, Timmy V. http://burningones.com/ http://five.sentenc.es/ - Spend less time on e-mail