暂存更改和非暂存更改
暂存区(索引)是一个容器,Git 其中收集所有更改,这些更改将成为下一次提交的一部分。
在本地机器上编辑版本化文件,Git 将识别为修改后的文件并称为未暂存。
暂存文件会将文件放入暂存区。
暂存区中的更改是下一次提交的一部分。
下一次提交会将所有项目从暂存区转移到存储库中。
暂存区允许收集所有更改以获得干净的提交。
Git 中有三个选项可以帮助撤消本地更改
要查看在工作目录中所做的更改,我们应该运行 git status:
git status
使用 git stash 撤消更改
要丢弃所有本地更改,同时保存它们以备后用,我们可以运行 git stash 命令:
git stash
有关更多信息,请参阅如何存储 Git 更改。
使用 git checkout 撤消更改
要永久放弃对文件的本地更改,我们可以运行:
git checkout -- <file>
使用 git reset 撤消更改
要永久放弃对所有文件的所有本地更改,我们可以执行以下操作:
git reset --hard
清理文件
git clean 是一个撤销命令,它完成其他命令,如 git reset 和 git checkout。
与其他命令不同,此命令对已添加到 Git 暂存区的文件进行操作,并在未跟踪的文件上运行。
未跟踪的文件是在工作目录中创建但尚未添加到暂存区的文件。
在进行项目时,我们发现自己犯了错误,需要撤消所有内容。
其中我们将获得与丢弃工作副本中未暂存更改相关的所有答案。
所有已进行但尚未使用 git add 命令发送到阶段的更改都被视为未暂存的更改。
暂存
git stash 命令搁置对工作副本所做的更改,以便我们可以执行另一项工作,返回并重新应用它们。
它接受暂存和未暂存的更改,保存它们以供进一步使用,然后从工作副本中返回它们。
我们可以使用 git stash drop 删除存储。
要删除所有存储,我们应该使用 git stash clear。
Git Checkout 与 Git Checkout -
git checkout 命令切换分支或者恢复工作树文件。
它对文件、提交和分支进行操作,并允许在单个存储库中在多个功能之间切换。
该命令与 git branch 命令一起使用。
它更新工作目录中的文件以匹配存储在该分支中的版本,指示 Git 记录所有新提交。
-with git checkout 是一种指示 Git 将 checkout 之后的内容视为文件而不是分支的方法。
例如,当我们有一个同名的文件和一个分支时,就会使用它。