问题标签 [undelete]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
67616 浏览

svn - 如何在 Subversion / TortoiseSVN 中“取消删除”已删除的文件夹?

我们不小心从我们的 Subversion 存储库中删除了“标签”文件夹,我们只打算删除一个特定的标签。取回“标签”文件夹的最简单方法是什么?

我们使用 TortoiseSVN 作为我们的客户端,我认为当我转到 repo 浏览器并显示日志时,会出现类似“从该修订版还原更改”之类的内容,类似于您在工作副本的类似对话框中看到的内容。但是那里没有这样的命令......

0 投票
2 回答
31258 浏览

git - 如何取消删除以前在 git 历史记录中删除的文件?

使用克里斯对另一个问题的回答,我可以将快照历史记录添加到我的 git 存储库中。由于其中一个文件不是我的历史记录的一部分,而是仅在快照中,因此第一个原始提交现在也包含该文件的删除。我该如何撤消呢?

起初我认为这与如何从 git 的历史记录中删除敏感文件相反,但实际上我不想将文件插入历史记录,而只是从历史记录中删除删除。

0 投票
1 回答
2333 浏览

git - “Git Clean -fdx”恢复……可能吗?

我可能犯了一个巨大的错误。

相关系统信息:

  • 视窗 XP SP2
  • i686 Cygwin 1.7.6 混帐
  • 1.7.1

我试图在新创建的 git 存储库上创建一个空分支,这是我刚刚发出的命令:

问题是我不知道 clean 命令确实删除了当前文件夹中的文件,并且由于这是一个新初始化的 git 存储库,因此没有旧版本可以恢复。

我将一些文件上传到我的主页上,但有些没有。任何有关如何恢复文件的想法将不胜感激。我不介意使用任何类型的恢复软件,而且我知道在 linux/cygwin 上丢失文件即使不是不可能恢复也是一种痛苦,但嘿,让我们试一试吧。

0 投票
1 回答
896 浏览

windows - 如何在 Windows 操作系统中访问不可删除的目录/文件?

我对目录不可删除的概念有疑问。在Windows 操作系统中,我们使用命令"cacls FolderName /e /c /g %username%:f"将不可删除的文件或文件夹转换为可删除。我使用相同的命令访问C: 驱动器中存在的“不可删除文件夹” (例如恢复、文档和设置等)。它不起作用。他们如何创建这种文件夹。如果有其他方法可以做到这一点。请清除我。提前致谢。

0 投票
2 回答
378 浏览

svn - 如何复活未提交的目录和文件?

我设法使用命令从我的工作目录中删除了一个文件夹

我意识到我删除的目录是错误的,我需要找回它。我可以看到硬盘驱动器上的目录和所有子目录,但没有文件。如果我检查状态

它显示了所有前面带有“D”标记的文件。我还没有提交更改,那么有没有办法取回这些文件?

0 投票
2 回答
1817 浏览

c - 在 C 中使用 undelete() 恢复已删除的文件

我只是想在 HFS+ 格式的 Volumn 上恢复 C 中的文件。根据

NAME undelete -- 尝试恢复已删除的文件

LIBRARY 标准 C 库 (libc, -lc)

概要 #包括

描述

undelete()系统调用尝试恢复以路径命名的已删除文件。目前,这仅在命名对象是联合文件系统中的空白时才有效。系统调用删除了白化,导致联合堆栈较低层中的任何对象再次变得可见。

最终,该undelete()功能可以扩展到能够恢复已删除文件的其他文件系统,例如日志结构文件系统。

返回值

如果成功,该undelete()函数返回值 0;否则返回值 -1 并设置全局变量errno以指示错误。

所以程序很简单:

当前目录 (pwd) 是 /Users/Leo/Desktop/,我使用的是带有 HFS+ 文件系统的 Mac 10.7.2。

但是当我运行程序时,我得到了 shell 返回 255。

任何的想法?谢谢

0 投票
2 回答
6044 浏览

svn - 取回已删除的 .svn 文件夹

在我的服务器上,我安装了 subversion,但我不小心从根目录中删除了 .svn 文件夹,因此该文件夹不再受版本控制。

当我尝试进行新的结帐时,出现错误

那可能是因为 .svn 在子文件夹中仍然可用。

我怎样才能取回 .svn 文件夹以便我有可用的颠覆?

0 投票
6 回答
8863 浏览

rest - RESTful 取消删除

支持数据服务的取消删除或延迟/批量删除是相当普遍的要求。我想知道的是如何以 RESTful 方式实现这一点。我在几个不同的选择之间左右为难(其中没有一个对我来说非常有吸引力)。我相信,这些不同选项的共同点是需要一个 API,它返回所有标记为已删除的特定资源类型的资源。

以下是我考虑过的一些选项以及它们的一些优点/缺点:

将资源标记为已删除的选项:

  • 使用 HTTP DELETE 将资源标记为已删除。
  • 使用 HTTP PUT/POST 更新已删除标志。这感觉不对,因为它将本质上是从 HTTP DELETE 方法中删除的内容映射到其他 HTTP 方法中。

获取标记为删除的资源时的选项:

  • 为标记为已删除的资源返回 HTTP 状态 404。干净透明,但是我们如何区分真正删除的资源与刚刚标记为已删除的资源之间的区别。
  • 返回 HTTP 状态 410。提供区分差异的方法,但 410 从技术上讲它“预计将被视为永久性的。具有链接编辑功能的客户端应该在用户批准后删除对 Request-URI 的引用。” 这里的“预期”和“应该”这两个词可能有足够的回旋余地。不确定客户端对 410 的支持/理解程度如何。
  • 返回 HTTP 状态 200 并包含指示资源已删除的标志字段。这看起来很奇怪,因为首先删除它的想法是因为您实际上希望它不出现。这将过滤已删除资源的责任推给了客户端。

包含此已删除资源的响应选项:

  • 省略标记为已删除的资源。干净简单。但是,如果您真的想了解已删除的资源怎么办。
  • 包括它们以及表明它们已被删除的字段。这将过滤已删除资源的责任推给了客户端。如果您只想对活动或已删除的资源进行分页,则分页会变得很棘手。

更新标记为删除的资源时的选项:

  • 使用 HTTP 状态 404。资源不见了对吗?但是,您如何区分标记为已删除的资源和实际已删除的资源。404 响应中的 HTTP 正文可以在这里消除歧义,但随后客户端需要解析/解释您的正文以消除歧义。也许响应标头在这里可能会有所帮助?哪一个?自定义标题?
  • 将 HTTP 状态 409 与有关如何首先取消删除资源的消息一起使用。

取消删除标记为删除的资源的选项:

  • 使用 HTTP PUT/POST 进行资源更新操作并再次将其标记为活动。这仅在您没有为资源的 GET 操作返回 HTTP 404 时才有效,因为它不会自 PUT/POST 到“未找到”(404) 的资源。
  • 使用 HTTP PUT/POST 进行资源的创建操作。这里的问题是哪些数据优先?在创建操作中发送的数据?还是正在取消删除的数据?将它从任何其他可能返回它的查询中过滤出来。然后,如果资源标识符指向标记为已删除的资源,则将创建资源的 HTTP PUT/POST 视为取消删除。
  • 单独的 REST 路径专用于取消删除标记为删除的资源。

这绝不是一份详尽的清单。我只是想列举一些一直在我脑海中蹦蹦跳跳的选项。

我知道如何做到这一点的答案是,像往常一样,“这取决于”。我很好奇的是你会用什么资格/要求来做出决定?你是如何看到这个实现或自己实现的?

0 投票
2 回答
89215 浏览

git - 在 GIT 中撤消删除

我做了一些非常愚蠢的事情。我使用 git commit(文件编辑 + 新文件)(C)进行了提交。然后我修改了最后一次提交。然后我递归地删除了所有文件(!),git rm -r 然后我又做了一个 git commit (C)。

有什么方法可以取消删除文件但保留我在第一次提交中所做的更改?(C) 我宁愿不要回到 (B)。我尝试了 git reset --soft head^,然后 git status 列出了我删除的文件,然后我做了 git checkout,但仍然没有运气。我什至不知道这是否可能。

0 投票
1 回答
935 浏览

version-control - 恢复 tfs 中已删除的文件

我有一个巨大的存储库。不久前,一个名为 FooBar.xml 的文件已从 tfs 中的某个未知目录中删除。找到文件的最简单方法是什么?存储库中有数千个目录,因此手动检查每个目录以查找已删除文件并不是一个可行的选择。