如何使用git存储库替换损坏的文件

本文关键字:损坏 文件 替换 何使用 git 存储 | 更新日期: 2023-09-27 17:50:00

我一直有问题VS2013破坏我的Program.cs文件(见这个问题),所以我建立了一个Git仓库,并提交了我的项目的一个版本。果然,当我今天打开项目时,Program.cs是腐败的。

所以我想我需要从repo中拉出Program.cs的工作版本,并用这个干净的版本替换损坏的版本。我一直试图通过阅读Pro Git来学习如何使用Git,但到目前为止我还没有弄清楚如何做到这一点。奇怪的是,当我运行git status时,在"未提交的更改"下面没有modified: Program.cs的列表。我确实看到了modified: Relinker.v12.suo。我知道项目中的所有.cs文件都被跟踪,因为在我向任何其他.cs文件添加数据后,保存更改并重新运行git status,该文件最终显示为modified:

很抱歉,如果这是一个令人困惑的问题。我只是想尽快弄清楚源代码控制,弄清楚这个文件损坏是怎么回事,并恢复一个好的文件版本。

如何使用git存储库替换损坏的文件

您可以通过以下命令将git工作副本的工作空间状态恢复到当前"活动"提交(也称为HEAD):

git checkout HEAD -- .

这里的命令语法如下:

git checkout [refspec] -- [path]

HEAD将被扩展为指向(如前所述)当前提交的活动版本。

如果您只想更改单个文件,请使用:

git checkout HEAD -- path/to/file