git - 删除名为 "~"的文件并从 git 取消暂存

标签 git macos unix

我不确定这是如何发生的(也许我输入了命令行vi ~ /extra/space.txt?),但现在有一个名为~的文件已准备好提交。我不想将其添加到 git,并且我犹豫是否要尝试 rm ~在考虑可能的副作用之前。

$ git status
On branch master
All conflicts fixed but you are still merging.
  (use "git commit" to conclude merge)

Changes to be committed:
    modified:   apples.js
    modified:   app/berries.js
    modified:   app/views/pears.js
    new file:   app/views/lemons.js
    modified:   public/stylesheets/oranges.css
    new file:   ~

最佳答案

使用反斜杠进行转义

rm \~

或者,您可以使用单引号来避免 shell 解释(而不是转义 shell 解释)

rm '~'

由于提交是暂存的,您还需要在 merge 之前通过再次添加删除的文件来清除它(因此它的缺失会 merge 到暂存的提交中)或重置-ing 删除的文件(这可能是因为您使用了 git add -a)

git add \~

虽然您的担心是实际的,但也不必担心,rm 不会删除目录,只会删除文件,而不提供一些标志(-d -r, -R..)

关于git - 删除名为 "~"的文件并从 git 取消暂存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69320056/

相关文章:

git - ~/.gitconfig 中针对 Mac 的特定优化

java - 每 1 分钟在 for 循环中调用一个命令

bash - 使用 UNIX 批量重命名文件 - 我应该使用 awk 吗?

git - 使用 git checkin 对 UTF8 BOM 的更改

linux - 无法从安装的驱动器克隆存储库

ios - 什么是 iDOT block

MySQL-DB 与 MAC 的连接!

cocoa - Mac OS X showWindow 问题 : NSWindow appears only once

linux - features.h header 的目的是什么?

git - .tmux.conf : update status commands on panel focus