今天有一个文件在提交之后恢复到旧版本的了,产生的原因不清楚,不过基于git详细的提交记录模式,最终我找回了正确版本的代码。
首先确定需要找的文件名:application/modules/Pc/views/exhibition/index.phtml
然后执行命令:
git log -p application/modules/Pc/views/exhibition/index.phtml>a.log
打开a.log找到最近一次的正确代码版本,也就是commit后面的hash值。
导出那次的代码到一个zip文件:
git archive -o a.zip 06770e2a2afd3fc86c132243531942380e4e928d
如果需要对寻找的文件加一个期限,可以这样做:
# 在某个时间之后
git log --since="Fri Mar 7 19:16:10 2016 +0800" -p application/modules/Pc/views/exhibition/index.phtml
# 在某个时间之前
git log --before="Fri Mar 10 19:16:10 2016 +0800" -p application/modules/Pc/views/exhibition/index.phtml
这里只要把年月日改掉就可以了,其他时间参数系统会自己计算的。也就是把这里面的 Mar
(三月,这里用每个月的英文单词前三个字母表示),7
号,2016
年改成想要限制的时间点。这两个参数是可以同时使用的。
打开a.zip,就能得到当时提交的文件代码了。
虚惊一场,感谢git。。
相关文档
随便看看
畅言模块加载中