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

Git重新提交还原的提交

  •  2
  • Richard  · 技术社区  · 14 年前

    我在Github上主持了一个项目。在生产中部署的代码有一个主分支(主分支)。单个项目从主项目(proj-001、proj-002…)分支。

    所以在项目/部署过程中……

    • 吉特结帐总分行
    • 吉特拉原点主支
    • Git结账-B项目-001
    • (进行一些编辑)
    • 加特。
    • git commit-a-m“一些注释”
    • (将主分支合并到我的工作分支)
    • (进行更多编辑)
    • 加特。
    • git commit-a-m“更多注释”

    在某个时刻,图书管理员将所有代码拉到一起进行测试/部署循环。如果某个分支有问题,则会恢复该分支。(坏消息是,一旦恢复正常,将分支恢复到主分支是困难和危险的。)

    所以我的问题是:什么是将我的承诺转化为新的分支的最好和最简单的方法?(我当前尝试“cherry pick”时,出现了一个错误“fatal:your index file is unmerged.”(致命:你的索引文件未被合并)。谷歌未能对此进行描述。

    更新:我更新了事件…图书馆员不经意把主要的部门合并成了我的工作部门…不止一次。

    1 回复  |  直到 14 年前
        1
  •  2
  •   Richard    14 年前

    我真希望有人能回答这个问题…但同时,因为我有一个答案,而且它似乎在起作用…我不妨分享一下。

    最大的问题是其他人将主分支合并回我的分支。这使得任何樱桃采摘或应用都变得困难。另外,找到正确的命令是一个挑战,它将给我一份我所做的全面更改列表。因此,基本概述:

    • 签出我的项目
      • GIT校验
    • 获取我的更改列表
      • git log--pretty=oneline--committer=>/tmp/changeset.txt
    • 编辑文件并删除描述,在每行前面加上“git merge”
    • 颠倒顺序
      • 尾部-r/tmp/changeset.txt
    • 然后一次合并一个,并在发生冲突时解决冲突。