Bug report: Folder and files are deleted by git stash -u
- From
Tobias Preuss <tobias.preuss@googlemail.com>
- Date
- Feb 5, 2015, 09:56 UTC
- Message-ID
- <CADEaiE8zSptYy9GTi4ZZ2bZptbretW6kDM4srmrSqaYeavfFhg@mail.gmail.com>
Hello.
I noticed some bizarre behaviour when using: git stash -u. It deletes folders which contain files configured to be ignored. I actually lost files by this which I could not restore.
Here is how you can reproduce the case.
1. Create a project folder to act as the root of the repository. `cd` into the directory 2. Create a folder `tracked-folder` with a file `tracked-file` in it. Add some content to the file. 3. Create a folder `untracked-folder` with a file `untracked-file` in it. Add some content to the file. 4. Create a file `to-be-stashed`, add some content to the file. 5. Create a `.gitignore` file with the following content: `untracked-file`. 6. Initialize the Git repository: `git init .` 7. Add all files to be tracked: `git add . & git commit` 8. List the current content of the repository: `tree`. It should show the following:
├── to-be-stashed
├── tracked-folder
│ └── tracked-file
└── untracked-folder
└── untracked-file9. Run `git stash -u` and inspect the folder again:
.
└── tracked-folder
└── tracked-file10. Run `git stash pop` and inspect the folder once again:
.
├── to-be-stashed
└── tracked-folder
└── tracked-fileThere you are - you just lost the whole folder.
Can you please confirm or deny if this is a bug? Thank you. Best regards, Tobias