代码之家  ›  专栏  ›  技术社区  ›  Alexander

Git(龟甲)-如何将单个文件恢复到以前的版本,然后撤消恢复?

  •  30
  • Alexander  · 技术社区  · 16 年前

    当Git与TortoiseGit一起使用时:有人知道如何将单个文件(或完整的存储库)恢复到以前的版本吗?

    例如,我有一个包含多个文件的存储库。一个文件有三个版本(1;2;3)。现在我想从第三版改回第二版。

    TortoiseGit在“Show log”对话框中提供了一个“Revert”功能,允许跳回特定版本,但这将还原整个存储库,而不是单个文件。

    而且,一旦我恢复了某些内容,我就不知道如何撤销恢复并跳回最新版本。

    5 回复  |  直到 10 年前
        1
  •  19
  •   mlibby    16 年前

    从命令行: git checkout 这可能是你想要的。

    该文档显示了以下示例:

    $ git checkout master~2 Makefile

    恢复 Makefile 返回到主分支中的两个修订

    从Ortoisegit(通过Windows资源管理器)中,似乎可以通过以下步骤完成此操作:

  • 在资源管理器中导航到文件所在的文件夹。
  • 右键单击要还原的文件,选择 Show log 从陆龟的上下文菜单
  • 在顶部(“图表”)中,选择包含要还原到的文件版本的修订版
  • 在第三部分(文件列表)中,右键单击该文件并选择 Revert to this revision
  • 你应该收到这样的信息 1 files revert to e19a77
  •     2
  •  17
  •   Chris Moschini    13 年前

    在TortoiseGit中,答案是右键单击项目文件夹并单击“显示日志”,然后右键单击要回滚到的更改,然后单击“切换/签出到此…”。它将允许您从提交堆栈中的奇怪位置继续,或者在您计划提交并希望事情保持正常的情况下进行分支。

        3
  •  17
  •   mxmoss    10 年前

    还可以获取特定文件:

    • 右键单击该文件
    • 选择菜单项:Git Show Log

    TortoiseGit显示一个包含所有修订的对话框

    • 点击之前的版本(2)

    在对话框底部的列表中,它显示了与提交相关的所有文件

    • 找到要查看的文件
    • 右键单击该文件并将修订保存到
    • 这将使用连接在文件上的提交编号保存文件的上一版本

    例如: -原始文件是原始文件。txt -修订版2将另存为文件67b51a8。txt

    我用的是龟甲v2。2.0.0

        4
  •  8
  •   Community Mohan Dere    9 年前

    根据以下评论更新了我的答案:


    假设工作树是干净的,您想要:

    1. 签出以前版本的一些文件
    2. 测试
    3. 恢复到当前版本

    1. 签出以前版本的一些文件

      (a) 右键单击要还原的文件并显示该文件的日志

      enter image description here

      (b) 右键单击文件列表中的文件并执行 恢复到父版本

      enter image description here

      enter image description here

      (c) 重复(a)、(b)直到你得到所有你想要的文件。

      enter image description here

    2. 测试

    3. 恢复到当前版本

      (a) 表演 还原 在浏览器的上下文菜单中

      这样,您可以选择要还原的文件。

      (b) 或者快速的方法:表演 重设 在日志对话框中

      这样,所有更改的文件都会恢复。(=>丢失所有工作目录更改)

      enter image description here

      enter image description here

    (在Ortoisegit 1.8.16.1、GfW 2.6.4、windows.1、Win 10 64位上测试)

        5
  •  2
  •   Ovsyanka    9 年前

    对于乌龟版本2.3.0:

    你可以用几种方法来做,但我认为最快的方法是:

    1. 右键单击该文件
    2. 单击菜单选项“与以前版本的差异”
    3. 右键单击文件的左(上一)版本
    4. 点击菜单选项“使用整个文件”
    5. 保存更改(ctrl+s)