git - 当我想获得另一个文件的未修改版本时,如何只提交一些文件?

标签 git github

我认为这是关于 git 的最常见问题。 但我有具体问题。

例如,我在本地 git 中得到了几个文件,并且修改了其中的一些文件。一旦我记忆起我在一个文件中犯了一个错误,但我想保存其余文件中的更改。 我可以通过 git add 将它们的状态更改为暂存,但是如何仅提交选定的文件并返回我现在不想提交的文件的原始版本。

所以,我想,我的问题是如何返回一个文件的未修改版本并保存另一个文件的更改。 谢谢

最佳答案

您可以使用新的 command git restore ( less confusing than git checkout ),使用 Git 2.23+(2019 年 8 月)

You can restore both the index and the working tree (this the same as using git-checkout)

$ git restore --source=HEAD --staged --worktree hello.c

or the short form which is more practical but less readable:

$ git restore -s@ -SW hello.c

关于git - 当我想获得另一个文件的未修改版本时,如何只提交一些文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58124911/

相关文章:

git - 撤消 git merge 几个之前的提交

git - 我可以提交/推送一个文件,在 git 中省略某些注释吗?

github - 推送到github的问题

java - 如何使用jgit将现有存储库克隆到新的github实例?

git - 是否有 Git 命令导入 hg 存储库

git - Git 处理 CRLF(回车、换行)的策略是什么?

git - VSCode - 选项卡图标颜色反射(reflect) git 状态

Azure DevOps - 管道不应触发 PR 构建

Github Desktop 不显示来自 merge --no-ff 的提交

ios - 构建操作失败,未为React Native Xcode项目指定任何错误