1.git的认识
1.git的安装
普通用户下:
sudo yum install -y git
2.版本控制
版本控制:就是将每一次修改的都会上传一次,每次会有自己的上传记录,并且记录每一次的版本,可以随时得到每次上传后的版本内容。(这只是我的自我认识)
对源代码的历史修改进行维护,保留历史的所有修改记录
gitee&github:是一个远程平台
git:是将本地库的代码上传到远程代码库中,即gitee或github
3.git的操作
windows中就运用git的三板斧,add,commit,push
Linux中首次使用时,要运用一下的命令
git config --global user.name 你的gitee用户名 git config --global user.email 你的邮箱
如图是一个git仓库和本地代码存放位置,git中包括git远端仓库和暂存区
三步操作
1.git add:会将当前目录下已经修改过的部分记录下来,添加到git仓库的暂存区
2.git commit:将暂存区的内容同步到本地仓库当中,同步之后,暂存区内容就清空了
3.git push:本地仓库内容同步到远端仓库
另一些命令:
git log:查看历史提交
git rm filename:删除信息
这里git只是简单的认识应用。
2.Linux调试器-gdb使用
1. 背景
首先我们先来了解gcc与g++编译的编译情况。
linux下,gcc/g++出来的二进制程序,默认采用release模式
Linux下,gcc/g++采用debug模式编译程序的命令,要使用gdb调试,必须在源代码生成二进制程序的时候, 加上 -g 选项。
debug与release的区别
release:会优化代码,不可调试
debug:对代码的优化会弱于release,但可在编译器形成可执行程序时,会给可执行程序增加调试信息。
debug运行的程序会比release模式下运行的程序所占内存大,因为添加了调试信息。
2. 开始使用
quit:退出gdb
list/l:|文件名:行号/函数名,I行号/函数名;接着上次的位置往下列,每次列10行
b:b文件名:行号/函数名,b行号/函数名;在某一行设置断点
info/i: info b/break:查看断点信息
d:d断点编号:删除断点
disable/enable 断点编号:使能(关闭打开)断点
next/n:逐过程,F10
step/s:逐语句,F11
print/p:查看变量内容&&地址a && &a
display 变量名: 跟踪查看一个变量,每次停下来都显示它的值
undisplay number :取消对先前设置的那些变量的跟踪
continue/c:运行至下一个断点处
finish:运行结束所在函数,就停下来
until X行号:跳转至指定X行,中间的代码都是运行了的!info (i) locals:查看当前栈帧局部变量的值
set var:修改变量的值,set var i=100
breaktrace(或bt):查看各级函数调用及参数
run(r):运行程序
注意例子:
1.l(list)加文件名:查看文件信息
gdb默认执行最近的命令
2.断点只能分开去打,不能一次性打
b+行数:行打断点
b+文件+行数:一个文件的哪一行打断点
b+文件名+函数名:一个文件中的某个函数断点
3.删除断点:d+断点编号
info b:查看断点信息
disable+断点编号:禁用断点
enable+断电编号:使能端点,启用断电
断点编号会持续增加,不会减少