【问题标题】:retrieve the original version of a C++ file检索 C++ 文件的原始版本
【发布时间】:2018-07-22 07:24:23
【问题描述】:

所以我正在处理一个 C++ 项目。当我尝试 tar 文件时发生了错误。现在,当我在 Visual Studio Code 上打开文件时,它会显示这条消息。

The file will not be displayed in the editor because it is either binary, very large or uses an unsupported text encoding

这不仅仅是关于 Visual Studio Code,我无法在任何文本编辑器上打开该文件。文件扩展名还是.cpp

我怎样才能找回文件的原始版本?!

【问题讨论】:

  • 用十六进制编辑器查看文件。它包含什么?
  • "当我尝试 tar 文件时" -- 你运行了什么命令?
  • 您是否忘记“解压缩”存档?
  • 如果您更改了文件并想回到以前的版本,请从您的版本控制系统中检查以前的版本(gitmercurialsvn 或类似的) .不使用版本控制? 现在开始始终使用版本控制,即使是琐碎的项目。
  • 始终使用版本控制。 Git 是你的朋友。

标签: c++ visual-studio-code


【解决方案1】:

也许您丢失了该文件(例如,在出现 gcc foo.cpp -o foo.cpp 之类的错误后,例如将输出编译到源代码中)。

当然,你有备份。使用它们。

然后,考虑学习如何使用一些version control 系统。我强烈推荐git(即使是你一个人编码的小型个人项目),然后你应该经常git commit,通常至少在每个工作小时内(但是请确保提交正确编译的代码,但可能非常错误)。

(丢失一些代码是我们一生中经常犯的一个错误;我已经到了丢失打孔卡的年龄......)

我不是使用git 的专家,但我确实觉得它非常宝贵。如果您编写 free software,请考虑在您的存储库中使用 git,例如github.

git 有一些优秀的documentation,包括短视频教程。您将在命令行上使用它。所以我强烈推荐 学习一点git今天个人小项目所需的东西真的很简单(即使你会像我一样,不理想地使用git)。

【讨论】:

  • 上次我编译的文件很好。我没有使用 git,因为它是一个小项目,所以我认为我不需要它。
  • 如果您不使用像 git 这样的普通版本控制,那么编写一个批处理文件,将源目录压缩到一个带时间戳的 zip 文件中——在紧要关头可以工作。
  • @David C. Rankin 或者只使用 git。完成git init 需要 2 秒时间,真的没有理由不正确地做。
  • 哦,我不是在敲 git,我喜欢它,但对于短文件(如这里的答案),一个简单的脚本可以复制到 /sav 目录中文件名的时间戳版本对于那些不愿意潜入 git 的人。虽然 git init 可能需要一秒钟,但分支、合并、丢弃分支、变基等往往需要几分钟才能结交朋友。
  • @DavidC.Rankin:我真的是git 的新手,但对于简单的个人项目,我发现它很容易使用。我并没有声称它使用得足够好......
猜你喜欢
  • 2012-02-18
  • 2022-11-30
  • 2012-01-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-02-04
  • 2018-12-05
相关资源
最近更新 更多