Linux下git和gdb的使用(上)

简介: Linux下git和gdb的使用

一、使用git命令行


1.1安装git、配置仓库

安装git :sudo yum install -y git


我们在自己的gitee开创一个仓库,用于上传我们的Linux文件。然后就可以克隆到Linux


1669270753586.jpg


在我们git下来的文件里面除了两个说明书和一个通行证,还有隐藏文件:.gitignore和.git. 我们先来谈.gitignore


Ⅰ.gitignore


它的里面全是文件后缀:


1669270794042.jpg


这些后缀是做什么的呢?凡是在.gitignore里面的后缀,我们在上传的文件后缀凡是被包含于其中的,都不会被上传到gitee,相当于一个过滤器。


Ⅱ.git


而所谓的git仓库,本身就是一个目录.git +里面的内容。


1669270808753.jpg


.git类似于我们的一个中转站,我们先把新增的文件添加到.git目录,然后再上传到码云gitee。介绍完这些,我们再来看一下git的基本使用。


1.2git的基本使用


①git add


git add 文件名 这个指令的作用在于将我们刚刚clone下来的目录里新增的文件添加到.git目录。


1669270828660.jpg


②git commit  -m ‘日志’


这个指令先把.git新增的文件合并到本地仓库,注意,这里我们还没上传到远端,而引号里面就是我们要写的日志,我们可以添加一些备注或者日期。


③git push


把本地的推送到码云。需要我们输入gitee的用户名和密码,我们可以设置为免密码,但是不推荐。


④git status


查看git状态,会显示我们当前进行到git的哪一步了。


1669270839572.jpg


当我们git add .之后,查询状态,会提示我们下一步要commit。  


⑤git mv


git mv source destination

要求source文件必须是文件,链接或目录,如果destination是现有的目录,则被认为是移动source到destination,如果destination不存在,则被判定是更改名字。


演示:


1669270877024.jpg


我们这里的git mv pu.c love包含三步:


mv pu.c love
rm pu.c
git add .


我们查询git status 就会发现已经执行了git add . 到了git commit的阶段。


需要注意的是如果是改名必须在git commit之后才能改名。


⑥git pull


如果你把远端的仓库里的文件给修改了,就会导致git push失败,这时就需要git pull把文件拉回来进行合并,然后我们就可以提交git push。git保证本地和远端仓库的文件要保持一致。


⑦git log


git log 可以查看所有的提交记录:


1669270902197.jpg


我们发现我们commit时写的日志也会显示,所以要提醒各位老铁,不要乱写,hr会看的!!😄


二、Linux调试器-gdb


2.1、gdb的使用


Windows下我们通过编译器比如说vs进行调试,那么在Linux下我们也有自己的调试工具--gdb。gdb是基于命令行式的调试,两者在方法上有区别,gdb没有vs调试起来那么方便,但是在思路上还是相近的。


一般我们的编译器上是没有配备gdb的,需要自己安装。


安装指令:sudo yum install -y gdb


1669270933031.jpg


这里要提到两个指令,在gdb模式下:


🖊list(l)是查看代码


🖊run(r)是运行代码


🖊quit(q)是推出gdb模式


那么我们可以看到我这里的查看代码什么也没有看到,这是为什么呢?这是因为,在默认情况下,gdb无法进行对现在发布的程序进行调试。也就是说,默认情况下,我们发布的程序是release版本。我们知道vs下我们想调试必须将软件设为debug模式,设为debug后才能生效,否则不能调试。


怎么才能让他以debug版本发布呢?我们需要在gcc编译软件时添加-g选项。

1669270956315.jpg

1669270963188.jpg


相关实践学习
阿里云图数据库GDB入门与应用
图数据库(Graph Database,简称GDB)是一种支持Property Graph图模型、用于处理高度连接数据查询与存储的实时、可靠的在线数据库服务。它支持Apache TinkerPop Gremlin查询语言,可以帮您快速构建基于高度连接的数据集的应用程序。GDB非常适合社交网络、欺诈检测、推荐引擎、实时图谱、网络/IT运营这类高度互连数据集的场景。 GDB由阿里云自主研发,具备如下优势: 标准图查询语言:支持属性图,高度兼容Gremlin图查询语言。 高度优化的自研引擎:高度优化的自研图计算层和存储层,云盘多副本保障数据超高可靠,支持ACID事务。 服务高可用:支持高可用实例,节点故障迅速转移,保障业务连续性。 易运维:提供备份恢复、自动升级、监控告警、故障切换等丰富的运维功能,大幅降低运维成本。 产品主页:https://www.aliyun.com/product/gdb
相关文章
|
24天前
|
NoSQL Linux C语言
Linux GDB 调试
Linux GDB 调试
44 10
|
26天前
|
NoSQL Linux C语言
嵌入式GDB调试Linux C程序或交叉编译(开发板)
【8月更文挑战第24天】本文档介绍了如何在嵌入式环境下使用GDB调试Linux C程序及进行交叉编译。调试步骤包括:编译程序时加入`-g`选项以生成调试信息;启动GDB并加载程序;设置断点;运行程序至断点;单步执行代码;查看变量值;继续执行或退出GDB。对于交叉编译,需安装对应架构的交叉编译工具链,配置编译环境,使用工具链编译程序,并将程序传输到开发板进行调试。过程中可能遇到工具链不匹配等问题,需针对性解决。
|
23天前
|
NoSQL Linux 编译器
内核实验(一):使用QEMU+GDB断点调试Linux内核代码
如何配置环境并使用QEMU虚拟机结合GDB进行Linux内核代码的断点调试,包括安装QEMU、交叉编译工具链,编译内核以及通过GDB远程连接进行调试的详细步骤。
29 0
内核实验(一):使用QEMU+GDB断点调试Linux内核代码
|
26天前
|
存储 Linux 开发工具
【Azure App Service】本地Git部署Python Flask应用上云(Azure App Service For Linux)关键错误
【Azure App Service】本地Git部署Python Flask应用上云(Azure App Service For Linux)关键错误
|
3月前
|
Linux 测试技术 开发工具
CentOS Linux 8使用阿里源(安装jdk11、git测试)
CentOS Linux 8使用阿里源(安装jdk11、git测试)
346 1
|
3月前
|
Linux 开发工具 git
解决 Linux git push 贡献者不同(没有出现绿点)的问题
解决 Linux git push 贡献者不同(没有出现绿点)的问题
|
4月前
|
NoSQL 搜索推荐 openCL
【C/C++ 调试 GDB指南 】gdb调试基本操作
【C/C++ 调试 GDB指南 】gdb调试基本操作
305 2
|
4月前
|
NoSQL Linux 开发工具
【深入解析git和gdb:版本控制与调试利器的终极指南】(下)
【深入解析git和gdb:版本控制与调试利器的终极指南】
|
25天前
|
NoSQL
技术分享:如何使用GDB调试不带调试信息的可执行程序
【8月更文挑战第27天】在软件开发和调试过程中,我们有时会遇到需要调试没有调试信息的可执行程序的情况。这可能是由于程序在编译时没有加入调试信息,或者调试信息被剥离了。然而,即使面对这样的挑战,GDB(GNU Debugger)仍然提供了一些方法和技术来帮助我们进行调试。以下将详细介绍如何使用GDB调试不带调试信息的可执行程序。
23 0
|
3月前
|
NoSQL Linux C语言
Linux gdb调试的时候没有对应的c调试信息库怎么办?
Linux gdb调试的时候没有对应的c调试信息库怎么办?
33 1