"git-stash --keep-index" crashes when there are no tracked files

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

I've found a bug.
It's something that's unlikely to happen in a normal workflow but it
breaks a script I'm trying to write.

Here is the complete report from "git bugreport":

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)
git init
git commit --allow-empty --message='initial commit'
touch foo
git stash push --include-untracked --keep-index

What did you expect to happen? (Expected behavior)
A stash entry storing the untracked file "foo" should be created. The
working directory and index should become empty.

What happened instead? (Actual behavior)
The command did what was expected but after that it crashed with the
following error message:
error: pathspec ':/' did not match any file(s) known to git

What's different between what you expected and what actually happened?
There should be no error message and the exit code should be 0.

Anything else you want to add:
This happens only if there are no files in the current HEAD. Adding
any file to the initial commit prevents the error from occurring (even
if it is unchanged when the stash is created).
I suspect that the command has trouble with the corner case of
restoring the state of the index when there are no tracked files.
I also tested it using executables of "git-stash" compiled from
current branches "maint" and "next". The behavior is the same.

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.34.1
cpu: x86_64
no commit associated with this build
sizeof-long: 8
sizeof-size_t: 8
shell-path: /bin/sh
uname: Linux 6.8.0-39-generic #39~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC
Wed Jul 10 15:35:09 UTC 2 x86_64
compiler info: gnuc: 11.4
libc info: glibc: 2.35
$SHELL (typically, interactive shell): /bin/bash


[Enabled Hooks]




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux