【问题标题】:Xcode 4 restore file from earlier commitXcode 4 从早期提交中恢复文件
【发布时间】:2011-07-14 20:22:57
【问题描述】:

我的项目在 git 存储库上,但到目前为止我还没有发现它非常有用。我以前用过 git,觉得它很棒,但这次我使用的是本地 repo。我想有一些方法可以将文件恢复到以前的提交,甚至整个项目,但我找不到这个选项?

有没有办法做到这一点?还是我必须提前创建一个分支。因为这似乎你必须提前知道我们会出错。

我也找不到放弃项目中所有本地更改的选项,从而有效地恢复到我的上一次提交。

【问题讨论】:

    标签: iphone git xcode4


    【解决方案1】:

    我找不到放弃项目中所有本地更改的选项,有效地恢复到我的上一次提交

    git reset --hard HEAD
    

    参见git reset:这会将工作树和索引重置为HEAD 当前所指的内容。
    另请参阅 Git 书籍“Undoing in Git - Reset, Checkout and Revert

    第一部分见git checkout,但beware of detached HEAD

    【讨论】:

    • @Jonathan:对,我更喜欢控制台;)塔也不错(git-tower.com
    • 控制台很棒,并且 Tower 也非常棒,但是 Tower 的成本相当高(与终端相比,显然是免费的,并且 IDE 的 xcode 也是 5 美元)。我只是希望在 xcode 中有一个方便的按钮。
    • @Jonathan:我明白,这是完全合法的请求。其他 Git 命令尚未完全集成(如这个 SO 问题 stackoverflow.com/questions/5302367/xcode-4-git-integration 所示)。所以与此同时...stackoverflow.com/questions/456403/… ;) DTerm 可以成为一种解决方法,而不必离开XCode
    【解决方案2】:

    这个聚会有点晚了。

    如果您无法破解命令行选项(恕我直言,这是最好的选择),您可以尝试使用 github:mac 与 xcode 一起还原/提交/暂存代码。

    这是一个非常好用且易于使用的基于 git 的 UI,而且它是免费的!!

    不用担心您不需要将您的存储库推送到 github,因为它会自然轻松管理本地存储库。

    我经常用它来回滚项目。但是,在执行此操作时必须小心。

    尽量不要将“project.xcworkspace”置于版本控制之下。在还原和丢弃或存储未提交的更改之前关闭 Xcode。

    【讨论】:

    • 如何在 github:mac 中存储?
    • 在 github:mac 中创建分支时会自动进行存储。请参阅“为什么我的更改消失了”mac.github.com/help.html
    【解决方案3】:

    我目前在同一条船上。看起来 Xcode4 希望我们使用快照功能。这有我们想要的恢复选项,前提是您在提交时点击了创建快照。它位于“文件”下拉菜单中的“版本控制”下方,非常方便。 Create Snapshot 使用 control + command + s 快捷方式,这非常方便,因为我经常点击 command + s 作为保存热键。或者甚至更好。 Automatically

    【讨论】:

    • 我尝试从快照创建和恢复,但是在单击恢复时,它要求我打开一个我想要恢复的文件夹,当我只想恢复项目时,选择一个刚刚创建正确的文件夹目录树,但没有任何恢复的文件。
    • 我刚刚找到了这个 (stackoverflow.com/questions/5302367/xcode-4-git-integration/…) 并通过终端尝试了它,然后在 Xcode 中加载了我的项目,它处于我选择的提交应该处于的状态。这不是 100% 来自 Xcode 内部,但它是一种以最小的头痛恢复到先前状态的方法。
    • xcode 4 的版本控制一团糟。您不能将它用于严重的源代码控制 b/c 它缺少很多关键功能。完全避免它。
    猜你喜欢
    • 2020-06-15
    • 2011-08-11
    • 1970-01-01
    • 1970-01-01
    • 2012-03-16
    • 2021-04-15
    • 2020-10-17
    • 1970-01-01
    相关资源
    最近更新 更多