• Gitgit版本回退 测试


    前言

    前面已经简单的介绍了如何使用git,我们也知道每一次提交,都是属于一次版本,如果目前我们正在发布的版本有问题,想要回退,这个时候应该怎么做呢?

    git reset命令介绍

    git reset 表示用于回退版本的操作,也可以执行对应的版本进行回退

    git reset [--soft | --mixed | --hard] [HEAD]

    git reset --soft 表示:回退到某个版本,只回退了commit的信息,修改完本地代码后,可以重新提交

    git reset --mixed 表示:表示默认参数,为了重置暂存区的文件和上一次文件保持一致

    git reset --hard 表示:表示回退到对应的版本。本地代码也会进行回退

    版本回退

    1、我们现在在一个git仓库中新建一个txt文件,然后将它提交到远程仓库中

    [root@anjing git_test]# vi 111.txt 
    [root@anjing git_test]# cat 111.txt 
    这是第一次提交的记录:01
    [root@anjing git_test]# git add .
    [root@anjing git_test]# git commit -m "第一次提交txt文件" 
    [master 36b821d] 第一次提交txt文件
     1 file changed, 1 insertion(+), 1 deletion(-)

    2、我们可以通过 git reflog  来查看我们的git仓库有那些提交,并且可以看到前面每个版本的版本号

    [root@anjing git_test]# git reflog 
    36b821d (HEAD -> master) HEAD@{0}: commit: 第一次提交txt文件
    671846d (origin/master) HEAD@{1}: commit: 新增一个txt文件
    2bf9c6d HEAD@{2}: commit (initial): 新增一个md文件

    3、这里为了表示明显,我们再来一次提交

    [root@anjing git_test]# vi 111.txt 
    [root@anjing git_test]# cat 111.txt 
    这是第一次提交的记录:01
    ---------------------------
    这是第二次提交的记录:02
    [root@anjing git_test]# git add .
    [root@anjing git_test]# git commit -m "第二次提交txt文件"
    [master e393ccd] 第二次提交txt文件
     1 file changed, 2 insertions(+)

    4、再次查看我们历史提交记录

    [root@anjing git_test]# git reflog 
    e393ccd (HEAD -> master) HEAD@{0}: commit: 第二次提交txt文件
    36b821d HEAD@{1}: commit: 第一次提交txt文件
    671846d (origin/master) HEAD@{2}: commit: 新增一个txt文件
    2bf9c6d HEAD@{3}: commit (initial): 新增一个md文件
    [root@anjing git_test]# 

    5、这里我们发现代码有问题,想要回退到第3笔提交,这个时候我们可以通过git reset 这个命令 git reset --hard 版本号 

    [root@anjing git_test]# git reset --hard 36b821d
    HEAD is now at 36b821d 第一次提交txt文件
    [root@anjing git_test]# cat 111.txt 
    这是第一次提交的记录:01
    [root@anjing git_test]# git reflog 
    36b821d (HEAD -> master) HEAD@{0}: reset: moving to 36b821d
    e393ccd HEAD@{1}: commit: 第二次提交txt文件
    36b821d (HEAD -> master) HEAD@{2}: commit: 第一次提交txt文件
    671846d (origin/master) HEAD@{3}: commit: 新增一个txt文件
    2bf9c6d HEAD@{4}: commit (initial): 新增一个md文件

    这里我们会发现上面的截图中HEAD-->指向的是第一次提交的版本记录,从文本内容中也可以看的出来,我们已经将其回退到了对应的版本

    上传代码仓库

    我们已经对代码进行了回退,那么我们将我们回退的代码推到我们的代码仓库,使用git push  的命令

    去我们的远程仓库上,这里安静的远程仓库是gitee上地址,发现我们已经对gitee上进行了提交。

    在另一个文件夹中可以看到我们这里的git版本还是我们第一次提交的内容

     通过git pull 进行拉去远程代码仓库的内,这个时候就发现远程代码已经拉去到了本地

  • 相关阅读:
    Net Remoting(应用程序域)
    C# 方便的复制/比较物件内数据的方法(Object Copy / Compare)
    c# 序列化
    Windows Phone 7 开发日志(初试一、随便研究)
    关于Windows Phone 7推广策略的失误
    vb 托盘图标
    vb code中调用exe文件,当关闭的时候直接关闭文件.
    调用INI文件
    使用SQL的JOB调用DTS定制任务!
    给Word设置目录
  • 原文地址:https://www.cnblogs.com/qican/p/15624578.html
Copyright © 2020-2023  润新知