热门标签 | HotTags
当前位置:  开发笔记 > 开发工具 > 正文

第3章本地项目回滚

在我在看电视的时候,我家的猫跳到了我的笔记本电脑上,踩了几脚然后跑开了。看完电视的我回到电脑前的时候惊讶地发现它把我刚才提交到仓库中的文件原文都已经删掉,并且打了一堆乱码保存了!现在我的文件长这样子:

在我在看电视的时候,我家的猫跳到了我的笔记本电脑上,踩了几脚然后跑开了。看完电视的我回到电脑前的时候惊讶地发现它把我刚才提交到仓库中的文件原文都已经删掉,并且打了一堆乱码保存了!现在我的文件长这样子:

这可怎么办啊?虽然我用猫零食打了那只猫一顿,但是失去了这么有水平的文章让我非常的心碎。在感到终极的孤独无助之后,我想到了Git管家。哪怕是在极度伤感之时,作为社会主义的接班人,我们的礼貌还是不能少的,毕竟这代表了我们的良好风貌。首先我们先要在命令行中使用git status来Git管家打招呼(切记,输入命令之前你一定要先切换到之前创建工程的目录)。

Git管家就回复了:清单上没有东西需要提交的,你可以使用git add <文件名>来把文件先提交到清单上,或者使用git checkout -- <文件名>把已经修改过的文件中修改的地方还原回去。

我一看果然有戏!于是使用git checkout -- 2022-02-22.txt来试着还原,重新打开发现我之前的内容果然又回来了!简直美滋滋!

于是我便继续写,争取早日完成这一部大作!这是我继续写的内容,独乐乐可不如众乐乐,发出来让大家感受一下:

写完之后我感觉这简直荡气回肠,令人心情舒畅。于是依次使用了以下命令将它提交到Git仓库中:

git status   //查看版本变动
git add .    //添加所有文件进Git清单中
git commit -m “吃完菠萝吃橙子”   //正式将文件添加进Git仓库中

这里第二步的git add .中的点号意思是将所有改过的、新增的文件都加到git清单中。因为有时候我们项目可能同时改几十个文件,用以前的git add <文件名>一个个添加的话可能你会奔溃的。

当我把修改好的作品提交到Git仓库后就去看电影了,在看完电影回家路上我看到一家大排档的橱窗中国挂着一只烧鸡,怎奈囊中羞涩吃不起于是只好灰头土脸地回到了家中,幻想着自己有朝一日能够啃完一整只烧鸡。这时候想起了我正在为未来的自己写一篇日志,所以我决定吃完菠萝我不吃橙子了,我要吃一整只烧鸡!但是作为一位优秀的写作者我又不想一个字一个字地删掉自己的写过的内容,否则会显得非常的没有牌面,怎么办呢愁死个人了。这时候我又想到了Git管家。由于这次不是要提交事务了,而是把文件回滚到以前的状态,于是这次的打招呼是用的git log,翻译过来就是:Git管家啊,给我看看你的账本呗:

在这里我们可以看到有两个记录,下面一个是最早时间的"add 2022-02-02 diary",上面一个是

说回我们原本的话题,从时间版本的时间上来看我可以确定下面那条记录是我需要回滚的版本!于是我使用了git reset --hard b863,让Git管家帮我将版本回滚到之前的状态。

解释:reset意思是重新设置,--hard是指所有文件都还原,而b863是我需要回滚的版本commit 后面的前四位数,你也可以把版本号全部输入进去,但是我个人在这里一般只用四位数用作回滚,如果你有特殊癖好完全可以把版本号完完全全地输入进去。这时候,我的文档又回到了原来的版本,我的创作之路又得以继续!看看我把文件回复到什么样了吧!

章节总结

这一章我们介绍了未提交文件的回滚,和已提交文件的回滚。

-> 未提交文件的回滚:
git status  // 查看那个文件被修改了。
git checkout -- <文件名>  // 对你要撤销修改的文件执行回滚

如果是要回滚多个文件的话,可以用类似于add .这里也可以用点号代替文件名。

->已提交文件的回滚:
git log  // 查看Git项目历史版本
git reset --hard <版本前四位数>  // 将项目回滚到你指定的版本

推荐阅读
  • 本文详细介绍了如何在Java Web服务器上部署音视频服务,并提供了完整的验证流程。以AnyChat为例,这是一款跨平台的音视频解决方案,广泛应用于需要实时音视频交互的项目中。通过具体的部署步骤和测试方法,确保了音视频服务的稳定性和可靠性。 ... [详细]
  • MySQL 8.0 MGR 自动化部署与配置:DBA 和开源工具的高效解决方案
    MySQL 8.0 MGR 自动化部署与配置:DBA 和开源工具的高效解决方案 ... [详细]
  • 本文介绍了如何在 Windows 系统上利用 Docker 构建一个包含 NGINX、PHP、MySQL、Redis 和 Elasticsearch 的集成开发环境。通过详细的步骤说明,帮助开发者快速搭建和配置这一复杂的技术栈,提升开发效率和环境一致性。 ... [详细]
  • 利用源链接技术调试ASP.NET Core源代码的方法与实践
    本文详细探讨了通过源链接技术调试ASP.NET Core源代码的实用方法,旨在为开发者提供高效、准确的调试技巧,适用于学习和实际工作中遇到的相关问题。希望读者能从中获得有价值的参考和启发。 ... [详细]
  • 如何轻松地将多个文件导入Python:简明指南 ... [详细]
  • 使用 `git stash` 可以将当前未提交的修改保存到一个临时存储区,以便在后续恢复工作目录时使用。例如,在处理中间状态时,可以通过 `git stash` 命令将当前的所有未提交更改推送到一个新的储藏中,从而保持工作目录的整洁。此外,本文还将详细介绍如何解决 `git stash pop` 时可能出现的冲突问题,帮助用户高效地管理代码变更。 ... [详细]
  • 如何高效利用Hackbar插件提升网页调试效率
    通过合理利用Hackbar插件,可以显著提升网页调试的效率。本文介绍了如何获取并使用未包含收费功能的2.1.3版本,以确保在不升级到最新2.2.2版本的情况下,依然能够高效进行网页调试。此外,文章还提供了详细的使用技巧和常见问题解决方案,帮助开发者更好地掌握这一工具。 ... [详细]
  • CSS雪碧技术是一种用于优化网页加载速度的有效方法,通过将多个小图像合并成一张大图像,减少HTTP请求次数。这种方法在前端开发中广泛应用,能够显著提升页面性能。本文将详细介绍该技术的实现原理,并提供一个具体的示例演示。 ... [详细]
  • 第二章:Kafka基础入门与核心概念解析
    本章节主要介绍了Kafka的基本概念及其核心特性。Kafka是一种分布式消息发布和订阅系统,以其卓越的性能和高吞吐量而著称。最初,Kafka被设计用于LinkedIn的活动流和运营数据处理,旨在高效地管理和传输大规模的数据流。这些数据主要包括用户活动记录、系统日志和其他实时信息。通过深入解析Kafka的设计原理和应用场景,读者将能够更好地理解其在现代大数据架构中的重要地位。 ... [详细]
  • 本文深入探讨了 Git 与 SVN 的高效使用技巧,旨在帮助开发者轻松应对版本控制中的各种挑战。通过详细解析两种工具的核心功能与最佳实践,读者将能够更好地掌握版本管理的精髓,提高开发效率。 ... [详细]
  • 2021年10月21日的工作日志记录了对数组 `digits` 进行加一操作的实现方法。具体思路是通过逆序遍历数组,找到第一个不为9的元素,将其加一,并将该元素之后的所有元素置为0。如果数组中所有元素均为9,则在数组最前面添加一个1,并将其他所有元素置为0。这一方法有效地模拟了数字加一的过程,确保了算法的高效性和准确性。 ... [详细]
  • 本文介绍了在 Android 平台上的图片上传工具类优化方案,重点讨论了如何通过设置 `MultipartEntity` 来实现图片的高效上传。具体实现中,通过自定义 `UserUploadServiceImpl` 类,详细展示了如何构建和发送包含图片数据的 HTTP 请求。此外,还探讨了如何处理上传过程中的常见问题,如网络异常和文件格式验证,以确保上传的稳定性和可靠性。 ... [详细]
  • 由于疫情原因,我在家尝试登录学校的教务系统时遇到了问题,页面显示“RPC 服务器应用程序无法访问”的错误信息。这可能是由于网络连接不稳定、服务器故障或客户端配置问题导致的。建议检查网络连接,尝试重启路由器,并确保浏览器和操作系统均为最新版本。如果问题依旧存在,可联系学校的技术支持部门寻求进一步帮助。 ... [详细]
  • tarzxvffilename.tar.gz顺便我们了解下linux下压缩与解压命令大全.tar解包:tarxvffilename.tar打包:tarc ... [详细]
  • 1.sqlite3xxx.db2..modecsv3..importcsv文件表名例:.importcity.csvcity4..quit退出注1:不要忘了开首的点注2:这条语句不 ... [详细]
author-avatar
椰子
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有