【问题标题】:Problems with reseting the git cherry-pick重置 git cherry-pick 的问题
【发布时间】:2013-08-08 10:00:27
【问题描述】:

我做了一些代码调整来评估我们软件中的一些功能。此更改是对软件版本进行的,比如说 dev_1。我们在 CVS 中有该软件的正式版本,所以我检查了 dev_1,启动了一个 git repo 并进行了一些提交。现在我的同事过来说“嘿,我对算法进行了一些调整,我想知道你对我的代码版本的评估如何,我的版本在 CVS 广告 dev_2 中。”

所以我从 CVS 中检查了 dev_2 并初始化了 git repo。现在我需要将我对 dev_1 所做的更改应用到 dev_2。我决定从 dev_1 存储库中挑选提交并将它们应用到 dev_2。

但是,我在cherrypicking 合并过程中犯了一些错误,现在我的 dev_2 工作目录似乎已更改,我不知道如何回到我尝试cherry-pick 之前的状态。

有什么办法,如何在摘樱桃之前到达该州? cherry-pick --abort 和 cherry-pick --quit 有什么区别(似乎没有帮助)? 最后,您认为解决这个问题的方法好还是有更简单的方法?

谢谢

【问题讨论】:

    标签: git cherry-pick


    【解决方案1】:

    首先做git status 来验证状态。仔细检查它打印的内容。

    • 如果它告诉你你在一个分支上,“master”只是有一些奇怪的(对你来说)文件状态,做

      git reset --hard
      

      将索引和工作树恢复到签出分支“master”的尖端状态。

    • 如果它告诉您您处于“分离的 HEAD”状态,请执行

      git checkout master
      

      然后像第一种情况一样继续。

    有关重置的更多信息,请参阅精彩的 "Reset Demystified" 文章。

    【讨论】:

      猜你喜欢
      • 2013-11-18
      • 2012-06-24
      • 2011-10-27
      • 1970-01-01
      • 2012-11-05
      • 1970-01-01
      • 2016-02-11
      • 2012-09-06
      • 2018-07-27
      相关资源
      最近更新 更多