Git实战技巧-如何查找哪一次提交导致了项目运行错误
1、问题场景
在项目开发中,都是以团队共同协助来完成一个项目的代码编写,经常会出现自己项目运行正常,但**在下拉远端代码后,项目无法启动,**并且项目运行的控制台出现大量的错误信息。
1.1、工作中假定场景
艾梅柏:自己的内部环境有问题,修改项目原有内容,并将代码提交到远端git上
德普:下拉远端git代码后,发现项目无法正常运行。
德普下拉代码后的git节点情况
德普本地代码错误
1.2、查找错误原因
通过错误日志可以,清楚的发现:Nacos链接失败
项目 Nacos 开发环境为:192.168.112.77:8848(原本正确地址)
链接的地址却变为了:192.168.200.129:8848(现错误地址)
找到错误原因后,就可以确定配置的文件位置:bootstrap.yml 文件
将错误地址再改为 192.168.112.77:8848 项目又可以正常运行
1.3、定位文件修改记录
现在项目虽然修改后,可以正常运行,但是团队协助为了以后不在出现这个问题,需要找出次文件被谁修改后出现的错误。
现在目标:通过git查找文件修改的记录,可以确定出 提交时间、提交版本、提交人
2、解决思路
2.1、通过idea工具解决
通过开发工具可以快捷定位到具体文件历史记录,不关心git命令也可以查找。
2.2、通过git命令行解决
通过git的bash命令窗口,使用git命令查找文件的历史记录
3、动手实战
3.1、基于idea工具解决
在 IDEA 工具中,选择被修改后的文件,点击菜单栏:Git–> Selected File–>Show History
历史记录示意图
指定文件git提交的历史记录
从上面的记录可以看到,修改的时间和修改人,已经修改后的内容。
git总分支的大概位置
3.2、基于git命令行解决
git 对于代码的版本控制提供了丰富的命令,来管理整个项目的代码,同样使用命令也可以查找指定文件的修改历史信息。
大致命令如下:
#命令一:
git log -- <文件的名称> :查看指定文件的提交历史记录
#命令二:
git log -p -<num> -- <文件的名称> 查看最近几次的提交历史记录,并显示内容的差异性
3.2.1、查看文件所有提交历史记录
git log -- <文件的名称>
命令说明:显示文件的修改所有历史记录
查看指定文件的提交历史记录
PS:根据本地仓库为根目录,找到要查看的文件相对路径。
3.2.2)查看文件自定次数修改记录
git log -p -<num> -- <文件的名称>
命令说明:显示文件的修改历史记录,并附带了每次文件提交的变化。
参数说明:
-p 表示每次提交的文件内容中的差异,相邻文件的的对比
- 表示显示文件最近修改的次数,num参数决定查看的最近修改次数内容
查看指定文件的进两次的提交历史记录,和文件内容差异性
4、问题小结
4.1、由于git下拉代码后出现项目运行问题,需要做下面几步操作:
1.查找错误信息,并确定错误的文件
2.根据git对指定的文件查看提交内容,并对比差异性,确定提交时间、提交人和提交内容
4.2、对于使用git查看文件的历史记录和修改内容,方式如下:
1.使用工具(IDEA)来查询,方便快捷,不需要记忆git命令
2.使用强大的git命令来查看文件的历史修改内容,但显示界面不易阅读,需要程序员会使用git命令
工作中为了提高效率,推荐使用工具来完成此次的操作。