git本地以及github查看历史版本、版本回退
文章目录一、本地查看历史版本命令行1最常用完整历史2简洁版一行一个最实用3看最近几条例如最近3条4图形化能看到分支5查看“所有操作”包括回退过的版本二、GitHub 网页查看历史版本1整个仓库的提交历史2单个文件的历史三、关键结论结合你之前的疑问四、可以检查版本回退1. 先看历史版本拿到版本号2. 一键回退到某个版本最安全1回退到**上一个版本**2回退到**上上个版本**最重要的区别一定要看1. **只回退本地**2. 回退后**强制同步到 GitHub**谨慎总结一、本地查看历史版本命令行进入你的项目文件夹右键 → Git Bash或终端。1最常用完整历史gitlog看到长串commit 哈希值版本ID作者、时间、提交说明从新到旧排列按q退出查看。2简洁版一行一个最实用gitlog--oneline只显示7位短ID 提交说明清爽很多。3看最近几条例如最近3条gitlog--oneline-n34图形化能看到分支gitlog--oneline--graph5查看“所有操作”包括回退过的版本gitreflog这个很重要就算你回退过版本这里也能找到旧版本ID。二、GitHub 网页查看历史版本1整个仓库的提交历史打开你的 GitHub 项目主页点上方commitsxx 个提交列表就是所有历史版本时间、作者、提交说明版本ID短哈希点进去能看改了哪些文件、增删了什么代码2单个文件的历史在仓库里打开某个文件右上角点History / 历史或钟表图标只看这个文件的所有修改记录三、关键结论结合你之前的疑问只要 commit本地就有历史只要 pushGitHub 就有历史。历史里的文件永远删不干净哪怕你后来删了密码文件只要 commit 过历史记录里一直存在。所以密钥/密码/敏感文件必须写进 .gitignore从一开始就不要 commit。四、可以检查在你项目目录执行gitlog--oneline如果没有任何记录说明你还没 commit现在加.gitignore最安全。如果已经有记录千万别再 push 含密钥的版本我可以帮你清理历史。版本回退只要 git log 能看到的版本 → 都能回退回退不会丢历史回去后还能再回来1. 先看历史版本拿到版本号gitlog--oneline你会看到类似abc1234 这次提交我想回退 def5678 初始化项目前面的abc1234就是版本号2. 一键回退到某个版本最安全gitreset--hard版本号例子gitreset--harddef5678执行完 → 你的代码立刻回到当时的样子1回退到上一个版本gitreset--hardHEAD^2回退到上上个版本gitreset--hardHEAD^^最重要的区别一定要看1.只回退本地gitreset--hard版本号→ 只改你电脑GitHub 不变2. 回退后强制同步到 GitHub谨慎gitpush-f→ 让 GitHub 也一起回到过去→只有你确定要重置云端时才用总结git log看历史git reset --hard 版本号回到过去回退只影响你本地不影响 GitHub想让 GitHub 也回去才用 git push -f