美文网首页
已经push的项目如何回退历史的某版本,并更新本地代码为该版本[

已经push的项目如何回退历史的某版本,并更新本地代码为该版本[

作者: 柳叔叔 | 来源:发表于2017-11-14 12:59 被阅读0次

    在项目开发过程中,遇到这种情况:

    • 已经项目已经push到远程服务器上,在原有的基础上已经开发了新功能,此时产品大大说,咱们要在不添加新功能的基础上做开发当前要用的版本,原有的新功能保持到下版本或者后版本开发.
    • 这个时候怎么办呢?

    解决方法是这样的:

    • 在git命令行中: git log.显示历史提交记录,找到我们想要返回的提交版本的commitId;例如,我现在想要在 test1对应的版本上进行开发;ta的commitId是 6409931...;
    查看历史提交记录.png
    • 接下来使用git 命令 回到当前版本
    版本回退并切换当前分支.png
    • git reset --hard xxxx(CommitId);这个操作后,HEAD指向了test1对应的版本记录;接下来在当前版本上开辟新的分支 newVersion(命名自己取)
    • git branch newVersion
    • gitcheckout newVersion
    • 进入 newVersion分支
    • git log ;查看当前分支的提交情况:
    • 这时最新的提交历史为test1 版本
    • 接下来,我们要回到master分支,因为master分支也是指向test1的,我们需要保持当前最新的提交;
    切换为master分支,并且将版本返回为最新提交的.png
    • git checkout master 切换到master分支
    • git reflog 查看历史提交情况;
    • 找到 test3对应的 commitId;
    • 好的,接下来我们做的操作是:
    • git reset --hard xxx(test3的commitId);
    • 完成操作后,输入命令行: git log
    • 显示当前master的最新提交记录是 test3

    综上 :

    • master的分支依旧为最新的版本
    • newVersion的分支是我们需要新功能的版本;
    • 我们要做的就是 在newVersion上做当前的开发工作了.

    参考文章:
    -1,https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/0013744142037508cf42e51debf49668810645e02887691000
    -2,https://www.cnblogs.com/azhw/p/5793292.html

    相关文章

      网友评论

          本文标题:已经push的项目如何回退历史的某版本,并更新本地代码为该版本[

          本文链接:https://www.haomeiwen.com/subject/jibxvxtx.html