【问题标题】:XCode - Any way to recover code after "Discard Changes"?XCode - “放弃更改”后有什么方法可以恢复代码?
【发布时间】:2016-08-25 15:48:08
【问题描述】:

昨晚我无意中做了一件非常愚蠢的事情。我已经在 iPad 项目上工作了几个月,而且(更愚蠢的是)没有备份。在XCODE中右键项目,误点击了“Discard Changes”

(愚蠢再次盛行)自最初以来我没有任何提交,当我进行放弃更改时,似乎它一直回到最初的提交,如果我正确地看待事情看起来像每个文件与第一次保存时一样。

我的问题是:有没有办法恢复我的工作?它在 .git 目录中吗?副本是否存储在其他地方?或者作为最后的手段,是否有机会使用取消删除实用程序恢复一些源文本?

谢谢,

鲍勃

【问题讨论】:

    标签: xcode ios5 version-control


    【解决方案1】:

    为了一点澄清..人们可以从垃圾箱中放回文件,因为丢弃更改会将文件发送到垃圾箱中

    【讨论】:

    • 谢谢 @Ammar Mujeeb 我真的不知道我的新文件没有提交错误地被丢弃然后它会被扔进垃圾箱......这对我有帮助。
    【解决方案2】:

    How to undo xcode discard all changes if not committed复制的答案

    退出 Xcode。 使用 TextEdit 打开您希望恢复丢失更改的文件。 转到文件 -> 恢复到 -> 浏览所有版本... 滚动浏览可用的版本。希望您将有许多可供选择。 选择一个版本并点击恢复。 按照 1-5 获取所有必要的文件。 启动 Xcode。您现在应该在 Project Navigator 中看到这些文件旁边的 M 表示它们包含未提交的更改(您之前丢弃的更改)。 您可能已创建并被丢弃的全新文件可以在废纸篓中找到。

    还有一点建议。如果您需要放弃更改,最好使用源代码管理 -> 通过右键单击项目导航器中的文件来放弃更改,而不是放弃所有更改,这可能会给您带来各种麻烦。

    祝你有美好的一天。 :)

    【讨论】:

    • 你刚刚救了我!谢谢!!
    【解决方案3】:

    好运毕竟是站在我这边的。事实证明,当我执行 Source Control > Discard Changes 操作时,它没有对保存在我的项目目录中的源代码进行任何更改。我能够开始一个新项目并重新添加文件。一旦我这样做了,我就能够在模拟器中编译和运行我的项目,就像它在事件发生之前一样。我现在有了备份,并在 git 中提交了更改。

    【讨论】:

      【解决方案4】:

      如果您“推送”并将之前丢弃的更改提交到本地 git 存储库,您就有希望获取此代码。或者,如果您使用 MacOS 包含的 Time Machine 或其他一些自动备份解决方案。

      除此之外,你可能会被冲洗掉。

      【讨论】:

      • 这就是我害怕的。我希望在进行丢弃更改时缓存文件的副本。看起来我将完全重新开始......这次是备份和提交策略。
      • 或简单地连接第二个硬盘驱动器并启用 Time Machine。这就是我在自己的开发机器上所做的。它多次保存了我的培根。
      【解决方案5】:

      如果您使用的是 Lion 或更高版本,即使您没有外置驱动器,您也可能拥有 Time Machine 备份。从 Lion 开始,Time Machine 将对文件进行“本地快照”;这就是他们支持“版本”功能的方式,该功能可让您返回文件的先前版本。

      如果您没有打开 Time Machine,那么……您可能会很不走运。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-11-20
        • 1970-01-01
        • 2012-04-16
        • 2011-12-17
        • 1970-01-01
        • 2018-03-02
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多