git bisect 命令教程

git bisect是一个很有用的命令,用来查找哪一次代码提交引入了错误。 它的原理很简单,就是将代码提交的历史,按照两分法不断缩小定位。所谓"两分法",就是将代码历史一分为二,确定问题出在前半部分,还是后半部分,不断执行这个过程,直到范围缩小到某一次代码提交。 本文通过一个实例,解释如何使用这个命令。下面是一个代码库,请将它克隆到本地。

这个库是一个网页index.html,在浏览器打开这个网页。

网页上是一个计数器,有两个按钮。点击+号按钮,可以看到计数器没有递增,反而递减,这说明代码有问题。 现在,就要来查找,到底哪一次代码提交,引入了错误。首先,检查一下代码提交历史。

可以看到,这个库一共有101次提交。最早的第一次提交的哈希是4d83cf。 git bisect start命令启动查错,它的格式如下。

上面代码中,"终点"是最近的提交,"起点"是更久以前的提交。它们之间的这段历史,就是差错的范围。 这个例子中,我们选择全部的代码历史。起点是第一次提交4d83cf,终点是最近一次的HEAD。当然,指定其他范围也可以。

执行上面的命令以后,代码库就会切换到这段范围正当中的那一次提交,本例是第51次提交。 现在刷新浏览器,点击+按钮,发现可以正常递增。使用git bisect good命令,标识本次提交(第51次)没有问题。

既然第51次提交没有问题,就意味着错误是在代码历史的后半段引入的。执行上面的命令,Git 就自动切换到后半段的中点(第76次提交)。 现在刷新浏览器,点击+按钮,发现不能正常递增。使用git bisect bad命令,标识本次提交(第76)有问题。

执行上面的命令以后,Git 就自动切换到第51次到第76次的中点(第63次提交)。 接下来,不断重复这个过程,直到成功找到出问题的那一次提交为止。这时,Git 会给出如下的提示。

既然找到那个有问题的提交,就可以检查代码,确定具体是什么错误。 然后,使用git bisect reset命令,退出查错,回到最近一次的代码提交。

现在就可以开始修复错误了。 (完)   from:http://www.ruanyifeng.com/blog/2018/12/git-bisect.html

龙生   25 Aug 2020
View Details

西游记

晚上,脑海中闪现出“五百年”……,忘了歌名,但知道是《西游记》里的音乐。一直回荡着这个旋律,于是乎就搜了一下音乐:《五百年桑田沧海》。 酷狗上听这个音乐的时候,看到几条评论,觉得很有意思,和大家分享一下: 孙悟空的一些话告诉我们什么是事实:当我是一只石猴时候,只有一些猴子和我玩。但是我学会本领之后就可以和牛魔王称兄道弟,和东海龙王呼来喝去,拿宝贝;在大闹天宫之前,各位神灵神仙都不拿我当回事,但是我大闹天宫之后,托塔天王都对我恭敬,在我达到雷音寺之前我只能对菩萨顶礼膜拜,当我成为斗战胜佛之后,我和菩萨都成为好哥们。一个人只有自己强大了才会有人脉,更多有利的资源。我没有资本,自己赚资本,我没有靠山,自己就是山。我没有天下,就自己打天下。这个世界从来就没有救世主,我弱了,所有困难都强了。我强了,所有困难都弱了。活着就要逢山开路,遇水架桥。生活你给我压力,我还你奇迹!   如果把西游记倒过来看,其实才是最真实的人生!如来派师徒四人带上八部天书和小白龙去东土大唐传教,在一路上遇到了各种妖怪,打来打去发现他们都是有后台的,无论怎么作恶都不受惩罚。八戒和沙僧觉得太黑暗了,无奈一个躲进了高老庄,一个钻进了流沙河,只有悟空坚持正义一路斩妖除魔护送师傅东去传教。结果天庭对悟空实在忍无可忍就和如来达成协议:我们可以保证唐三藏平安到长安,不过你得把孙悟空这个刺儿头给办了,如来同意了,在一翻阴谋之下,白龙重伤坠入山涧,悟空败了,被压在了五指山下。 唐三藏却抛弃了孙悟空,孤身来到长安,在长安传完教,被封为御弟,享受完荣华富贵,寿终正寝。就这样过了五百年,悟空终于从五指山下逃了出来,一声不吭,把天庭搅了个天翻地覆,天庭被逼无奈许诺让猪八戒化为人身,封为天蓬元帅,沙和尚封为卷帘大将,只要他们能够杀掉孙悟空。 最后的最后,因为兄弟相残而心灰意冷的悟空去寻找菩提祖师解惑,然后他封印了修为,如意金箍棒扔进了东海化作定海神针,回到花果山,陪着猴子猴孙过完了平凡的一生,最终在花果山的山顶化作了一块石头……这才是真正的社会。   如果有一天。我去世了。恨我的人。翩翩起舞。爱我的人。泪如雨露第二天。我的尸体朝西埋在地下深处。恨我的人。看着我的坟墓。一脸笑意。爱我的人。不敢回头看那么一眼。一年以后。我的尸体已经腐烂。我的坟堆雨打风吹。恨我的人。偶尔在茶余饭后提到我时。。仍然一脸恼怒。爱我的人。夜深人静时。无声的眼泪向谁哭诉。十年后。我没了尸体。只剩一些残骨。恨我的人。只引约记得我的名字。已经忘了我的面目。爱我至深的人啊。想起我时。有短暂的沉默。。生活把一切渐渐模糊。几十年后。我的坟墓,雨打风吹。没有一片荒芜。恨我的人。把我遗忘。爱我至深的人。也跟着进入了坟墓。对这个世界来说。我彻底变成了虚无。我奋斗一生。带不走一草一木。我一生执着。带不走一分虚荣爱慕。今生。无论贵贱贫富。总有一天都要走到这一步。到了后世。豁然回首。我的一生。形同虚度!我想痛哭。却发不出一点声音。我想忏悔。却已迟暮!。用心去生活。别以他人眼光为尺度。爱情仇恨,其实都只是为自身活着的。每一天幸福快乐就好。珍惜内心最想珍惜的。三千繁华。弹指刹那。百年之余。不过一捧黄沙。   86版音乐列表也贴一下: 音乐原声 歌曲名 作词 作曲 演唱 备注 两集片首曲(1984年)(即《计收猪八戒》、《三打白骨精》两集) 《百曲千折显精诚》 王立平 王立平 吴雁泽 每集片首曲(1986年) 《云宫迅音》 许镜清 片尾曲 《敢问路在何方》 阎肃 许镜清 蒋大为/张暴默 插曲 《生无名本无姓》 付林、晓岭 许镜清 黄小群/王小清 原第3集《大圣闹天宫》插曲 《大圣歌》 阎肃 许镜清 胡寅寅 第3集《大圣闹天宫》插曲 《他多想是棵小草》 阎肃 许镜清 丁小青 原第4集《困囚五行山》插曲 《五百年桑田沧海》 阎肃 许镜清 郁钧剑 第4集《困囚五行山》插曲 《走啊走》 阎肃 许镜清 周立夫/李静娴 第4集《困囚五行山》插曲 《吹不散这点点愁》 阎肃 许镜清 郁钧剑 第10集《三打白骨精》插曲 《女儿情》 杨洁 许镜清 吴静 第16集《趣经女儿国》插曲 《相见难别亦难》 阎肃 许镜清 吴静 第16集《趣经女儿国》插曲 《晴空月儿明》 阎肃 许镜清 迟重瑞 第18集《扫塔辨奇冤》插曲 《何必西天万里遥》 阎肃 许镜清 吴静 第19集《误入小雷音》插曲 《天竺少女》 阎肃 许镜清 李玲玉 第24集《天竺收玉兔》插曲 《青青菩提树》 阎肃 […]

龙生   20 Aug 2020
View Details

Nginx出现403 forbidden

nginx访问时报403, 于是查看nginx日志,路径为/var/log/nginx/error.log。打开日志发现报错Permission denied,详细报错如下: 1.    open() "/data/www/1.txt" failed (13: Permission denied), client: 192.168.1.194, server: www.web1.com, request: "GET /1.txt HTTP/1.1", host: "www.web1.com" 没有权限?于是找了不少资料,可以通过下面四步排查解决此问题。你可能只是其中之前配置有问题,不一定四个步骤都用上。   一、由于启动用户和nginx工作用户不一致所致 1.1查看nginx的启动用户,发现是nobody,而为是用root启动的   命令:ps aux | grep "nginx: worker process" | awk'{print $1}'   1.2将nginx.config的user改为和启动用户一致, 命令:vi conf/nginx.conf 二、缺少index.html或者index.php文件,就是配置文件中index index.html index.htm这行中的指定的文件。 1.    server { 2.      listen       80; 3.      server_name  localhost; 4.      index  index.php index.html; 5.      root  /data/www/; 6.    } 如果在/data/www/下面没有index.php,index.html的时候,直接文件,会报403 forbidden。     三、权限问题,如果nginx没有web目录的操作权限,也会出现403错误。 解决办法:修改web目录的读写权限,或者是把nginx的启动用户改成目录的所属用户,重启Nginx即可解决 1.    chmod -R 777 /data 2.    chmod -R 777 /data/www/     四、SELinux设置为开启状态(enabled)的原因。 4.1、查看当前selinux的状态。 1.    /usr/sbin/sestatus 4.2、将SELINUX=enforcing 修改为 SELINUX=disabled 状态。 1.    vi /etc/selinux/config 2. 3.    #SELINUX=enforcing 4.    SELINUX=disabled 4.3、重启生效。reboot。 1.    reboot   from:https://blog.csdn.net/qq_35843543/article/details/81561240

龙生   17 Aug 2020
View Details

Centos7系统查看某个端口被哪个进程占用

1.安装netstat工具

2.查看服务器所有被占用的端口

3.验证某个端口是否被占用

4.查看所有监听端口号

5.端口状态与打开方法:

from:https://www.cnblogs.com/elfin/p/12923669.html

龙生   17 Aug 2020
View Details

解决nginx报错:nginx: [emerg] bind() to 0.0.0.0:8088 failed (13: Permission denied)

报错描述: nginx: [emerg] bind() to 0.0.0.0:8088 failed (13: Permission denied) 通过ansible远程给主机更换端口并重新启动nginx服务,出现以上报错信息(权限被拒绝)。 解决方式:经检查发现是selinux导致报错。 [root@localhost nginx]# getenforce    #查询selinux状态 [root@localhost nginx]# setenforce 0        #临时将selinux关闭 如果需要永久关闭selinux,请编辑/etc/selinux/config文件,将SELINUX=disabled。之后将系统重启一下即可。 之后重启nginx服务,发现报错已经解除。   from:https://www.cnblogs.com/python-wen/p/11358978.html

龙生   17 Aug 2020
View Details

vi/vim下如何搜索字符串

1. 命令模式下,输入:/字符串 比如搜索user, 输入/user 按下回车之后,可以看到vim已经把光标移动到该字符处和高亮了匹配的字符串 2. 查看下一个匹配,按下n(小写n) 3. 跳转到上一个匹配,按下N(大写N) 4. 搜索后,我们打开别的文件,发现也被高亮了,怎么关闭高亮? 命令模式下,输入:nohlsearch  也可以:set nohlsearch; 当然,可以简写,noh或者set noh。   from:https://blog.csdn.net/whynotldch/article/details/78163480

龙生   17 Aug 2020
View Details

SFTP登录及命令行用法

1.  sftp常用命令 ls  查看当前目录下文件 help 查看sftp支持哪些命令 cd 指定目录 pwd 查看当前目录 get xxx.txt 下载xxx文件 put xxx.txt 上传xxx文件 quit / bye / exit 退出sftp sftp  xxx.xxx.xxx.xxx   登录root用户 sftp zygf@xxx.xxx.xxx.xxx  进行登录zygf用户 2.  sftp命令行登录过程 ① sftp   xxx.xxx.xxx.xxx   登录(默认root用户),若指定用户 sftp zygf@xxx.xxx.xxx.xxx  进行登录(zygf为用户名) ② 登录成功后,会提示输入 密码 ③  然后,可进入目录, ls 查看目录下内容 ④  cd 切换目录,get 获取文件, put 上传文件 ⑤  quit /  bye / exit  退出sftp   from:https://www.cnblogs.com/cyb-652356/p/11679074.html

龙生   17 Aug 2020
View Details

vscode 设置整体界面字体的大小

1 打开 首选项-设置 2 按照下图1,2,3执行即可   from:https://blog.csdn.net/sunyan3517/article/details/103944040

龙生   06 Aug 2020
View Details

使用CSS实现表格细边框的三种方式

说到表格,虽说随着前端技术的发展div已经遍地开花彻底推翻了table布局的时代。可是当遇到报表之类的操作是table还是非常值得使用的。 由于操作表格的时候不可避免使用到细边框效果,所以我就整理了一下常用的三种实现细边框表格的方式,分享给大家,代码如下:

  from:https://www.cnblogs.com/kutimes/p/5054357.html  

龙生   05 Aug 2020
View Details

git常用命令速查表-桌面图

  from:https://blog.csdn.net/lovequanquqn/article/details/81744744

龙生   04 Aug 2020
View Details
1 117 118 119 410