我试图撤销自上次提交以来的所有更改。在看完这篇文章后,我尝试了git reset -hard和git reset -hard HEAD。我回复头部现在在18c3773…但当我查看我的本地资源时,所有的文件都还在那里。我错过了什么?
当前回答
下面定义了一个可重用的Git命令别名来删除任何本地更改,然后可以在将来的任何时候使用它来删除任何未提交的更改:
git config --global alias.remove-changes '!git stash push --include-untracked && git stash drop'
使用别名很简单:
git remove-changes
别名使用git stash push—include-untracked将所有更改推入存储(包括未提交的),然后使用git stash drop删除新创建的存储条目。
其他回答
# Navigate to project root, `.` works too.
git restore *
git状态显示我有一些文件被更改,但我想摆脱这些并开始一个新的分支。直到今天,我一直在使用git重置方法,我喜欢用它来跳回其他特定的提交。
https://www.git-tower.com/learn/git/commands/git-restore/
对于那些到达这里搜索是否可以撤消git clean -f -d的人,通过它在eclipse中创建的文件被删除,
你也可以在UI中使用“restore from local history”为ref: restore from local history进行同样的操作
还有git stash——它可以“存储”你的本地更改,可以在以后重新应用,也可以在不再需要时删除
更多关于存储的信息
下面定义了一个可重用的Git命令别名来删除任何本地更改,然后可以在将来的任何时候使用它来删除任何未提交的更改:
git config --global alias.remove-changes '!git stash push --include-untracked && git stash drop'
使用别名很简单:
git remove-changes
别名使用git stash push—include-untracked将所有更改推入存储(包括未提交的),然后使用git stash drop删除新创建的存储条目。
添加这个答案是因为之前的答案会永久删除您的更改
安全的方法
Git stash -u
解释:隐藏本地更改,包括未跟踪的更改(-u标志)。该命令保存本地修改,并恢复工作目录以匹配HEAD提交。
想稍后恢复更改吗?
Git隐藏pop
解释:该命令将对当前工作树状态的顶部重新应用更改。
想要永久删除更改?
Git藏匿点
解释:该命令将永久删除所存储的条目
链接到git存储文档
推荐文章
- Visual Studio Code无法检测已安装的Git
- 强制LF eol在git的回购和工作副本
- Git:在裸库中更改活动分支的正确方法?
- 删除git中的分支是否会将其从历史记录中删除?
- 防止在GitHub上推送到master ?
- 根据Git,谁是“我们”,谁是“他们”?
- git如何合并后樱桃采摘工作?
- Git搜索单个文件历史记录中的字符串
- Git命令显示所有(轻量级)标签创建日期
- Gitignore并没有忽视文件夹
- 什么时候用。git/info/exclude代替。gitignore来排除文件?
- 如何告诉git忽略个别行,即gitignore为特定行代码
- 如何删除所有MySQL表从命令行没有DROP数据库权限?
- “git diff——耐心”是什么意思?
- 我如何在GitHub中为其他人的代码做出贡献?