中石化第四建设公司 网站,微官网 手机网站,常用seo站长工具,网站做标签页目录 一、分支回滚
1. 使用 git reset 命令
2.使用 git revert 命令 3.使用 git checkout 命令 二、某个文件回滚
1.查看哪些文件发生修改
2.然后查看提交记录(最近几次提交)
3.执行提交命令 一、分支回滚
1. 使用 git reset 命令 命令可以将当前分支的 HEAD 指针指向指…目录 一、分支回滚
1. 使用 git reset 命令
2.使用 git revert 命令 3.使用 git checkout 命令 二、某个文件回滚
1.查看哪些文件发生修改
2.然后查看提交记录(最近几次提交)
3.执行提交命令 一、分支回滚
1. 使用 git reset 命令 命令可以将当前分支的 HEAD 指针指向指定的提交从而回退代码到指定版本。 该命令有三种模式–soft、–mixed 和 --hard。它们的区别在于回退代码的程度不同。 --mixed 默认将 HEAD 指针和暂存区都回退到指定提交但不改变工作区的内容。--soft 仅将 HEAD 指针回退到指定提交不改变暂存区和工作区的内容。--hard 将 HEAD 指针、暂存区和工作区都回退到指定提交会丢失最新的代码修改慎用。
# 查看提交历史
git log # 回退到指定提交使用 --soft 模式
git reset --soft commit# 查看状态确认回退操作是否正确
git status# 提交回退后的代码
git commit -m 回退到 commit# 将修改的代码推送到远程仓库
git push origin branch2.使用 git revert 命令 git revert 命令可以将指定提交的修改反向应用到当前分支上相当于撤销指定提交的修改。 这种方式比使用 git reset 命令更加安全因为它不会改变提交历史而是创建一个新的提交来撤销之前的修改。 # 查看提交历史
git log# 撤销指定提交这样会创建一个新的提交来撤销之前的修改
git revert commit# 提交撤销操作
git commit -m 回退到版本 commit# 推送到远程仓库
git push origin branch3.使用 git checkout 命令 git checkout 命令可以将当前分支的 HEAD 指针指向指定的提交并将工作区的内容替换成指定提交的内容。这种方式不改变提交历史但会直接覆盖工作区的内容慎用。 # 查看提交历史
git log# 切换到指定提交
git checkout commit# 提交回退后的代码
git commit -m 回退到版本 commit# 切回到原来的分支
git checkout branch# 推送当前分支到远程仓库
git push origin branch
#branch 表示当前分支的名称例如 master。这个命令会将本地分支的提交推送到远程仓库并将远程分支更新为与本地分支一致。二、某个文件回滚 如果某次改动比较大牵涉到的文件比较多。但是某个文件本来是没问题的结果画蛇添足改出问题来了这时候直接回退版本会把所有代码都回退掉可能得不偿失。这时候就需要指定回退单个文件到为修改之前的版本。 1.查看哪些文件发生修改
首先先获取需要回退的文件路径比较简单的方法就是在该文件加个细微改动比如一条无关注释然后通过git status 可以看到当前分支下修改的文件信息
git status
查看文件内容变化
git diff commitId1 commitId2
或
git diff commitid 本地文件
2.然后查看提交记录(最近几次提交)
git log -2
commit 3f290fa303e1aceea63e215a7ec68a5381eb8034 (HEAD - main, origin/main) Author: ning ningxxx.com Date: Thu Sep 21 16:39:35 2023 0800 test buffer
commit 9bec77097394b5dcba39d79da7c6ea7ed73474f1 Author: ning ningxxx.com Date: Thu Sep 21 16:36:26 2023 0800 test buffer
这里有两个参数需要记录下来 需要回退的文件路径/source/code/test.java (git status 命令可以看到) 需要回退到哪的 commit ID3f290fa303e1aceea63e215a7ec68a5381eb8034
3.执行提交命令
执行 git checkout commitID 回滚文件路径
➜ git:(test) git checkout 3f290fa303e1aceea63e215a7ec68a5381eb8034 /source/code/test.java
Updated 1 path from 3f290fa30 此时代码就会还原到登录功能大改之前如果不需要做啥修改直接可以commit。