波奇学Linux:git和gdb调试

git用来版本控制,同样是版本控制的软件还有svn等。

git的特定是具有网络功能的版本控制器,开源,client和server是一体的。(去中心化分布式管理)

 client和server一体意味着远程仓库和本地仓库是平等地位,远程仓库是特殊的仓库而已,我们的clone远程仓库,某种意义上相当于远程仓库的push的操作

git本质上是操作系统,就像centos是基于Linux开发的,git和github是基于git的网站

git的常用指令

git clone http请求

 

cp复制文件到仓库中

添加文件到暂存区

git add filename

 提交文件到本地仓库

git commit -m "注释"

 此时要求设置邮箱和提交名单

 这个时候就提交成功了,注意邮箱和gitee账号邮箱一致才有提交的小绿点。

 

 输入指令

git push

填写git的用户和密码就提交成功了

 查看历史记录

git log

 查看仓库状态

git status 

 有一个文件未被追踪,用add来添加到追踪状态。

提交文件后再查看仓库状态发现有个文件可以去commit。

 

 gdb调试

输入指令下载gdb,root直接下载,普通用户提权下载

sudo yum install gdb -y

设置好makefile,默认生成debug版本

写好test.c的源码,确认能够正确运行后 

 进入调试

gdb filename

进入调试页面,注意输入生成文件名而不是源文件

 list指令查看源码内容

简写l list n 查看n行附近内容,list funcname 查看函数内容

 回车键查看下一行或者下一个函数内容,根据前一条指令确定。

打断点

在第n行打断点

b n

 查看断点

info b(information b)

 删除断点

d n (delete 断点编号(info b第一列))

当退出gdb后,断点不会保存下来会消失。 

 r运行程序,遇到断点停止。 

 

 n(next)逐过程,s 逐语句

 n不进入函数

 s进入函数

监视变量的值

p variablename

 

常显示

dispay variablename

 取消常显示

undispay num(最右侧编号的值)

 

 运行到指定行代码

until n

finish 完成当前函数运行。

finish

从一个断点运行到另一个断点

c

禁用/启用断点

disable/enable num

 跨文件打断点

在test.i处打上断点

 在变量某个特殊值时调试

set var variable=n

 查看函数调用堆栈

bt

查看局部变量

info locals

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值