如何在我的工作副本中排除非指数的变更?
当前回答
如果您只是想删除现有文件的更改,请使用支票(文档在这里)。
git checkout -- .
没有分支是指定的,所以它检查了当前分支. 双希芬(--)告诉Git,接下来的应该作为其第二个论点(路),你错过了一个分支的规格。
如果您想要从您的最后订单中删除添加的文件,请使用清洁(文档在这里):
git clean -i
选项 -i 启动一个互动清洁,以防止错误的删除。 还有许多其他选项可用于更快的执行; 查看文档。
如果您想将更改转移到持有空间以获得后续访问,请使用 stash (在这里文档):
git stash
所有更改将转移到 Git 的 Stash,以便随后访问。 有几个选项可用于更色彩的 Stash; 查看文档。
其他回答
如果您只是想删除现有文件的更改,请使用支票(文档在这里)。
git checkout -- .
没有分支是指定的,所以它检查了当前分支. 双希芬(--)告诉Git,接下来的应该作为其第二个论点(路),你错过了一个分支的规格。
如果您想要从您的最后订单中删除添加的文件,请使用清洁(文档在这里):
git clean -i
选项 -i 启动一个互动清洁,以防止错误的删除。 还有许多其他选项可用于更快的执行; 查看文档。
如果您想将更改转移到持有空间以获得后续访问,请使用 stash (在这里文档):
git stash
所有更改将转移到 Git 的 Stash,以便随后访问。 有几个选项可用于更色彩的 Stash; 查看文档。
我真的觉得这篇文章有用来解释什么时候使用什么命令: http://www.szakmeister.net/blog/2011/oct/12/reverting-changes-git/
有几个不同的案例:
如果您没有下载文件,则使用 git checkout. Checkout “更新工作树中的文件以匹配指数中的版本”。 如果文件没有下载(因此添加到指数)... 这个命令将基本上将文件转换为您最后的承诺。
我怀疑使用 git stash 是很受欢迎的选择,因为它有点不那么危险. 你总是可以回到它,如果你偶然在使用 git reset 时跳过太远。
请参见上面的文章以获得更多建议。
它甚至在常见的 git 许可之外的目录中工作。
sudo chmod -R 664 ./* && git checkout -- . && git clean -dfx
最近发生在我身上
当您输入 git 状态时(使用“git checkout -...”来删除工作目录的变更)显示。
上一篇:Git Checkout
我有一個奇怪的情況,在那裡一個檔案總是無關,這有助於我解決。
git rm.gitattributes git add -A git reset --hard
推荐文章
- Visual Studio代码如何解决合并冲突与git?
- 无法推送到远程分支,无法解析到分支
- Git:如何将数据库重置为特定的提交?
- 如何在合并期间使用Git和命令行保存本地文件或远程文件?
- 能够用一个命令推到所有git遥控器?
- 重新基于Git合并提交
- 忽略已经签入目录的内容?
- 如何完全删除TFS绑定
- 哪些Eclipse文件属于版本控制?
- 如何从windows cmd保存git提交消息?
- (Mac) -bash: __git_ps1:命令未找到
- 如何删除多个已删除的文件在Git仓库
- 使用vimdiff查看所有' git diff '
- 如何拉特定的目录与git
- 本地存储库中的文件与源文件之间的差异