Git重置将shell保留在孤立的目录中。当我的外壳使用目录时,为什么要删除该目录?

问题描述 投票:0回答:1

我不知道我遇到的是错误还是预期的行为,但幸运的是,我很快就发现了正在发生的事情。

我将我的外壳CD放入git repo的子目录中,并且我执行了git rebase -i squash操作,其中涉及的提交包括创建该目录。

该操作顺利完成后,shell变为孤立状态,其中git status(既不在zsh主题助手RPROMPT中,也不在运行时)指示我什至不在git存储库中。

一旦我运行了cd ..,一切都很好,这一切都说得通。在重新基准化操作的过程中,Git已rm定位了我所在的目录(在重新基准化的第一步),然后将其放回原目录。自从放回原位以来,我还可以一步一步跑到cd $(pwd)

这是一些令人困惑的行为。虽然,目前尚不清楚git在技术上做错了什么。我的问题是这是git中的错误还是应该让用户知道如何处理这种情况?

还有,更广泛的,实际的根本问题:如果我在已安装的目录中有外壳程序,而不允许弹出磁盘,为什么允许删除外壳程序所在的目录?对我来说似乎不一致。

案例:fuser <directory>显示当前目录使用。如果程序“在”目录中,则它在“使用”它。

git filesystems inode
1个回答
0
投票

端子1:

© www.soinside.com 2019 - 2024. All rights reserved.