Linux系统编程学习 NO.9——git、gdb

这篇具有很好参考价值的文章主要介绍了Linux系统编程学习 NO.9——git、gdb。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

本篇文章简单介绍了Linux操作系统中两个实用的开发工具git版本控制器和gdb调试器。

git

什么是git?

git是一款开源的分布式版本控制软件。它不仅具有网络功能,还是服务端与客户端一体的软件。它可以高效的处理程序项目中的版本管理。它是Linux内核的设计者Linus Torvalds为了帮助管理Linux内核开发和维护而开发的一个开放源码的版本控制软件。

如何使用git

这里我们推荐使用国内基于git,为用户提供远端代码仓库服务的网站gitee。然后手把手教你管理自己对应的本地仓库以及远端仓库。

第一步,你得注册并登录你的gitee网站的账户,在你的网页右上角有一个“+”号,点击里面的新建仓库。
Linux系统编程学习 NO.9——git、gdb,系统编程学习,linux,学习,git
第二步,创建远端仓库
Linux系统编程学习 NO.9——git、gdb,系统编程学习,linux,学习,git
第三步,将远端仓库克隆到本地仓库。首先现将远端仓库的链接拷贝下来。
Linux系统编程学习 NO.9——git、gdb,系统编程学习,linux,学习,git
然后打开本地环境
在终端bash命令行输入以下指令
Linux系统编程学习 NO.9——git、gdb,系统编程学习,linux,学习,git

git --version

如果显示出了对应的版本,则请看下一步。若显示未找到指令,则表示git还未安装。所以需要安装git。在bash命令行中输入下面指令安装git

sudo yum install -y git

当你看到本行是文字时,相信你的git也在你的本地环境已经安装,下面我们将远端仓库克隆到本地环境里,形成本地仓库。如果你是第一次安装git也会要求你提供你的身份信息,这是为了对代码进行溯源。具体提交身份信息的指令简单提供一下demo版本的。

git config --global user.email "你的email"
git config --global user.name "你的姓名"
git clone 你的远端仓库URL

Linux系统编程学习 NO.9——git、gdb,系统编程学习,linux,学习,git
第四步,提交本地仓库代码到远端仓库。需要用到三板斧进行相应的提交。

git add .
git commit -m "提交内容描述" 
git push

git add .命令是将你当前的目录下的文件提交到暂存区中。git commit -m 命令是将暂存区的文件提交到本地仓库中,并要求写上你在本次提交中做了什么?git push命令是将当前本地仓库的内容同步到远端仓库中。在初学时不建议通过配置文件省略用户名密码确认。

Linux系统编程学习 NO.9——git、gdb,系统编程学习,linux,学习,git
Linux系统编程学习 NO.9——git、gdb,系统编程学习,linux,学习,git

第五步,远端仓库对于本地仓库的管理。当我们需要删除或者调整代码仓库的结构时,需要在远端仓库进行相应的调整操作后,然后在本地环境中将远端仓库的操作后内容拷贝到本地仓库中。需要用到同步远端仓库内容与本地仓库内容的指令。

git pull

Linux系统编程学习 NO.9——git、gdb,系统编程学习,linux,学习,git
Linux系统编程学习 NO.9——git、gdb,系统编程学习,linux,学习,git
Linux系统编程学习 NO.9——git、gdb,系统编程学习,linux,学习,git
可以通过下面指令查看当前日志信息

git log

Linux系统编程学习 NO.9——git、gdb,系统编程学习,linux,学习,git
可以使用下面指令查看当前git的状态

git status

Linux系统编程学习 NO.9——git、gdb,系统编程学习,linux,学习,git

gdb

什么是gdb?

gdb是一款开源的源代码调试器。用于Linux环境下,C、C++、Python等编程语言的错误调试。gdb只能在debug版本下起作用,release版本是无法调试的。因为release版本对应目标的是用户,用户可不会去调试。

gdb的使用

Linux系统编程学习 NO.9——git、gdb,系统编程学习,linux,学习,git
这里可以看到gcc环境下默认是以release版本发布程序,如果我希望我的程序是以debug版本发布呢? 这就要使用gcc的-g选项。
Linux系统编程学习 NO.9——git、gdb,系统编程学习,linux,学习,git
这里可以看到debug版本程序的容量是要略大于release版本的。因为debug程序内部携带了调试信息。下面简单介绍两个gdb指令,l和q。l表示默认显示当前程序的前10代码,可以按回车换行符继续输出代码,也可以指定对应的行号显示代码。q表示退出gdb。
Linux系统编程学习 NO.9——git、gdb,系统编程学习,linux,学习,git
Linux系统编程学习 NO.9——git、gdb,系统编程学习,linux,学习,git

下面在正式介绍调试前先给大家看一下样例的源文件的代码
Linux系统编程学习 NO.9——git、gdb,系统编程学习,linux,学习,git
在gdb中输入r表示在gdb直接跑完当前的源代码。

Linux系统编程学习 NO.9——git、gdb,系统编程学习,linux,学习,git
我相信大家如果使用vs系列类似的图形化界面调试器,对断点一定不会陌生。那么在gdb下不和定义断点,如何查看断点,如何移除断点呢?且看下面的样例。
在gdb中,b + 行号 = 将对应的行号添加为断点。
Linux系统编程学习 NO.9——git、gdb,系统编程学习,linux,学习,git
我们平时用的图形化界面的集成开发环境中,断点是在行号的左边展示出来的。而gdb并不会在代码内容中显示断点位置。它需要通过一个指令来查看当前调试器中所有的断点。

info b

Linux系统编程学习 NO.9——git、gdb,系统编程学习,linux,学习,git
在gdb中跑info b指令后,当前程序的所有断点以及它们的相关信息就都能展示给用户了。那如果我要删除断点呢?这就需要用 d + 断点编号进行断点的删除。
Linux系统编程学习 NO.9——git、gdb,系统编程学习,linux,学习,git
在调试期间退出gdb,你上一次调试的内容数据将会被清空。
Linux系统编程学习 NO.9——git、gdb,系统编程学习,linux,学习,git
s表示逐过程执行,n表示逐语句执行。
Linux系统编程学习 NO.9——git、gdb,系统编程学习,linux,学习,git
until n行,表示直接跳转到第n行。display 变量名可以输出该变量的内容。
Linux系统编程学习 NO.9——git、gdb,系统编程学习,linux,学习,git文章来源地址https://www.toymoban.com/news/detail-751603.html

到了这里,关于Linux系统编程学习 NO.9——git、gdb的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【linux】git和gdb调试工具

    这两个步骤用于识别提交代码的身份,一个你的名字,一个你的邮箱 开启本地仓库 克隆本地仓库成功 我们将这个仓库拷到了111目录底下. 我们发现少了一个.gitignore,因为.gitignore是隐藏文件,所以使用ls -la查看 用于查看提交状态 上面可以看到提交人的信息,以及时间,以及提

    2024年02月22日
    浏览(36)
  • Linux6.yum,git,gdb

    1.yum三板斧 yum list :显示所有能安装的软件。 yum lisy | grep 软件 :搜索软件。 yum install -y :安装软件。 yum remove -y 软件 :删除已经安装的软件。 2.git git clone 仓库网址 :添加仓库,按回车之后。需要输入账户和密码。 git add 文件 :把文件添加到本地仓库。 git commit -m \\\"提交日志\\\" :提交

    2024年02月12日
    浏览(32)
  • 波奇学Linux:git和gdb调试

    git用来版本控制,同样是版本控制的软件还有svn等。 git的特定是具有网络功能的版本控制器,开源,client和server是一体的。(去中心化分布式管理)  client和server一体意味着远程仓库和本地仓库是平等地位,远程仓库是特殊的仓库而已,我们的clone远程仓库,某种意义上相当于

    2024年02月16日
    浏览(33)
  • 【Linux】第十站:git和gdb的基本使用

    如下所示,是我们的新建仓库时候的注意事项 我们需要注意的是 我们要选择开源 对于这个初始化仓库,我们现在可选可不选,选的话按照我们当前的语言即可,这个.gitignore这个文件的作用如果文件后缀与文件里面的相同的话,是不会被选择提交的,而是忽略的,因为我们提

    2024年02月05日
    浏览(37)
  • Linux编译器--git、yum、gdb的使用

    雷纳斯-托瓦兹在开源了linux后全世界的很多人都要给linux提供代码,他需要合并代码。但是一个人的精力有限。无法完成,他就自己写了一个版本控制工具git。来控制自己的代码,并且也开源了。 linux和git就不断迭代,也不断进步。后来有人对git进行了商业化包装,形成了g

    2024年01月20日
    浏览(60)
  • 【Linux】Linux工具篇(yum、vim、gcc/g++、gdb、Makefile、git)

    🚀 作者简介:一名在后端领域学习,并渴望能够学有所成的追梦人。 🚁 个人主页:不 良 🔥 系列专栏:🛹Linux   🛸C++ 📕 学习格言:博观而约取,厚积而薄发 🌹 欢迎进来的小伙伴,如果小伙伴们在学习的过程中,发现有需要纠正的地方,烦请指正,希望能够与诸君一

    2024年02月12日
    浏览(45)
  • Linux——环境开发基础(vim、gcc、yum、git、gdb)

    目录 1.Linux编辑器——vim使用  2.Linux编译器——gcc/g++ 3.Linux项目自动化构建工具——make/Makefile 4.Linux软件包管理器——yum 5.Linux调试器——gdb 前言:因为篇幅原因,本文着重列出命令,小伙伴下去自己尝试,只有多使用才能真的记住!  vim是一款多模式的编辑器 ——命令模式

    2024年02月17日
    浏览(42)
  • Linux系统gdb调试常用命令

    GDB(GNU调试器)是一款常用的调试工具,用于调试C、C++等编程语言的程序。以下是一些常用的GDB命令: 1. 启动程序:    - `gdb executable`:启动GDB调试器,并加载可执行文件。 2. 设置断点:    - `break line`:在指定行设置断点。    - `break function`:在指定函数的入口处设置断

    2024年02月10日
    浏览(38)
  • [Linux][环境配置][yum][vim][gcc/g++][gdb][makefile][git]详细讲解

    本篇文章以Centos为例 通过 yum list 命令可以罗列出当前一共有哪些软件包,由于包的数目可能非常之多, 使用 grep 命令只筛选出我们关注的包 yum list | grep sl 注意事项: 软件包名称: 主版本号.次版本号.源程序发行号-软件包的发行号.主机平台.cpu架构 “x86_64” 后缀表示64位系统

    2024年04月13日
    浏览(45)
  • 【Linux】Linux环境基础开发工具的使用 ———(yum、vim、gcc&g++、gdb、make/Makefile、进度条 、git)

    (꒪ꇴ꒪(꒪ꇴ꒪ )🐣,我是 Scort 🎓 🌍博客主页:张小姐的猫~江湖背景🌍 快上车🚘,握好方向盘跟我有一起打天下嘞! 送给自己的一句鸡汤🤔: 🔥集中起来的意志可以击穿顽石🔥 🙏作者水平很有限,如果发现错误,可在评论区指正,感谢🙏 🎉🎉欢迎持续关注!🎉🎉

    2024年01月16日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包