【Linux】git和gdb

目录

git

gdb


下面还有两个Linux中会用到的工具,一个是给git,可以叫版本控制器,就是对我们写的代码进行版本控制

一个是gdb,就是我们C语言/C++的代码调试工具

下面我们分别来介绍一下

git

git和Linux一样,也是一个开源项目,就是当初Linux的创始人林纳斯·托瓦兹创建的。git是一个开源的工具,那么他和gitee和github之间有什么关系呢?其实gitee和github只是一个网站,这个网站的底层用的还是给git,它不过是把底层git的信息显示到网站上,来满足人们的需求

那我们如何在gitee或github上建立远端仓库并且跟本地的仓库联系起来呢?我们以gitee为例

我们先在gitee网站上新建仓库

点击克隆

找到https的链接复制下来,然后到我们的Linux中输入

这样就把我们的远端仓库克隆到本地了,第一次克隆需要输入用户名邮箱的信息,在命令行中输入这个就行

下面是我们如何提交本地git和同步到远端git

我们克隆远端仓库到本地后本地就多了一个文件夹

我们要提交到本地git要首先把文件拷贝进这个文件夹

之后我们进入linuxcode这个文件夹,可以看到我们拷贝进来的文件

之后输入下面的指令

这样就提交到本地git了,如果像同步到远端,要进行git push命令

之后它会要求我们输入gitee的邮箱和密码,输完之后我们的远端git就更新了 

上面是我们简单的一些操作,就负责提交本地和远端,下面还有几个命令帮助我们更好的学习git

git log可以查看历史提交记录

用了这个命令,那么你之前所有的提交信息都会显示出来

git status 看看还有没有什么文件可以提交的,查看状态

我们可以直接在linuxcode这个目录下删除我们拷贝进来的文件,因为删除操作也属于一种修改,所以删除后也可以commit和push

git pull 当我们多人合作时,每个人都会提交代码到远端,当远端的代码比我们本地的代码版本要新时,我们就必须先更新我们本地git的代码,就是pull拉取到本地,之后再push推送到远端

我们其实可以看到linuxcode这个目录下还有一些隐藏文件

其中.git这个文件中存放的就是我们的修改信息

.gitignore这个文件中放的是一些后缀,表示有这些后缀的文件就不要提交了,并且在我们改这个文件后,它也是即时生效的

gdb

下面我们说一下gdb,它是一个调试代码的工具,我们知道发布软件有两种方式,一种叫debug一种叫release,只有在debug版本下才可以调试,gcc默认是生成release版本,所以我们在gcc命令下要加一个-g来表示要生成debug版本,就像这样

debug版本下可以调试就是因为这个版本下的可执行程序加了调试信息,它占的空间也是比较大的,我们也可以对比一下

我们也可以通过下面的指令看到多的内容

上面是一些基本的知识,下面是gdb的一些常用的指令用于我们的调试

第一个是进入调试,quit是退出调试

l + 行号是显示指定行附近的代码

b是breakpoint,意思是打断点

比如

b 10在第十行打断点

b Sum在这个Sum函数的第一行打断点

b add.c:7指定文件和行号打断点

info b查看所有打过的断点

我们在打完断点后用info b可以看到

最前边一行就是每个断点的编号,我们如果想删除断点也需要通过编号来删除

d就是delete

d 2就是删除第二个断点

r就是run,直接执行完程序

enable/disable+断点编号  就是开启关闭断点

n是我们的逐过程调试,就是VS中的F10,不进入函数

s是逐语句调试,就是F11,进入函数

p+变量或地址 可以显示具体的内容

display +变量或地址可以常显示,这个也是有编号的

undisplay+编号可以去常显示

c可以使程序从上一个断点直接到下一个断点

bt可以查看调用堆栈

finish 是将一个函数运行结束就停下来

until+行号 是在某一范围内直接运行到指定行

set var可以修改一个变量的内容,比如:

我们这个指令的用处一般是给条件语句用的,一般不会执行到的条件语句我们可以赋值来执行到那,来判断我们的代码是否有误

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值