Linux进度条小程序与git

git

  • Linux进度条小程序
    • 缓冲区问题
    • 回车换行
    • 倒计时小程序
    • 进度条程序
  • git
    • 什么是git
    • git的发展史
    • git的基本操作
      • 创建仓库与本地仓库建立联系
      • Linux中git提交代码的三板斧
      • git基础指令

Linux进度条小程序

缓冲区问题

Linux进度条小程序与git_第1张图片
Linux进度条小程序与git_第2张图片
编译运行后发现延迟了两秒才出现数字,我们都知道程序中的代码执行是从上到下,sleep虽然是让系统休眠两秒,但为什么在printf函数的后方也能影响输出时间?
这是因为输入的内容先放进了缓冲区,没有显示出来,等程序结束了才刷新缓冲区显示出数据来。
如果想让这串数字立马显示出来可以这样写:
Linux进度条小程序与git_第3张图片
fflush(stdout)是立刻刷新缓冲区的意思,这里就会立刻将缓冲区的数字显示出来,然后等两秒钟这个程序才会结束。
Linux进度条小程序与git_第4张图片
这样也是可以的,因为后面的换行是放进行缓冲区,这会将包括 \n 之前的都立即刷新。

回车换行

其实回车和换行并不是一个东西:
回车:\r
换行:\n
回车换行:\r\n
回车是回到这一行的头部,换行是换到下一行,我们在按键盘上面按回车健其实是进行了回车换行,每一次回车都会换到下一行的开头去,你看键盘上面回车图标画的是先下,后左的箭头,就是先换行,后回车。
在语言层面 \n 就是回车换行,因为编译器对这里进行了特殊处理。

倒计时小程序

Linux进度条小程序与git_第5张图片
注意输出格式,2d是因为第一个输入的是10,计算机只知道1和0,认为是两个字符,所以后续的输入需要用2d才能完全覆盖掉第二个字符0
在这里插入图片描述
这样就完成了。

进度条程序

首先要清楚我们要将这个进度条设计成什么样子:
在这里插入图片描述
第一个[ ]中的是进度条,第二个[ ]中的是进度条百分比,第三个[ ]中的是读取进度条的时候总会有一个东西转来转去。
Linux进度条小程序与git_第6张图片
这次分三个文件,一个主函数文件,一个定义进度条函数的文件,一个头文件。
这里是makefile文件中的编译与清理操作。
Linux进度条小程序与git_第7张图片
然后来实现进度条的代码:
Linux进度条小程序与git_第8张图片
主要利用了缓冲区。
Linux进度条小程序与git_第9张图片

git

什么是git

我们使用软件的时候会发现软件都有各种版本,想象一下如果某一个软件更新之后还不如上一个版本,如果没有保留历史版本会是一个非常糟糕的情况,这个时候就需要历史版本和各种改进的版本,这样方便总结经验也方便发生更新不如上一个版本的情况。
那么全世界都有这种需要代码保留历史版本的情况,如果能够有一个专门负责管理个人或者某个公司项目的历史版本的软件就好了,这里叫做版本控制器,也就是现在的git。
那么为了更加方便不需要客户端只需要一个网站就能进行操作,也就是现在的gitee与github。

git的发展史

Linux之父——林纳斯·本纳第克特·托瓦兹,当时每天都会接受来自全国各地提交的代码,然后进行合并代码(也就是CV),因为这个工作很繁琐,所以就找到了一个版本控制器,但这个收费的,与Linux社区的理念不符合,但是这个公司的老板因为欣赏Linux这种开源行为所以就让Linux社区免费使用。
但是Linux社区的一些黑客和网络工程师因为好奇这个版本管理器就尝试破解这个版本控制器,结果被发现了,这个老板就不再让Linux社区免费实用了,最后林纳斯·本纳第克特·托瓦兹自己用2~3周写了一个版本控制器然后开源了。
这个版本控制器就是git

git的基本操作

创建仓库与本地仓库建立联系

我常用的是Gitee.
首先要在这里新建仓库。
Linux进度条小程序与git_第10张图片
Linux进度条小程序与git_第11张图片
复制这个之后,在你Linux机器上输入指令:

git clone 你的gitee网址

这个操作是把远端仓库拉过来。
Linux进度条小程序与git_第12张图片
输入上面的指令会让你输入gitee的账户和密码,输入正确之后成功拉取远端仓库。
进入自己的仓库看看都有什么:
Linux进度条小程序与git_第13张图片
.git是本地仓库,本质就是一个目录,目录的内容是.git+其他内容。
上传到远端仓库就是通过本地仓库同步到gitee中。
隐藏文件.gitignore的作用就很大了,凡是在这个文件中后缀所对应的文件都无法上传到gitee:
Linux进度条小程序与git_第14张图片
LICENSE是开源许可证。
最后两个是英文和中文的说明文档。

Linux中git提交代码的三板斧

注意:当你第一次安装git时会提示你配置你的用户名和邮箱。
将提示的内容复制粘贴然后该双引号中的内容就就可以了。
这里将上面写的进度条代码上传试一下:
首先在本地仓库添加一个新目录,将进度条代码放进这个目录中
Linux进度条小程序与git_第15张图片
添加:git add .
这个指令是将新增目录添加到本地仓库里(临时仓库)。
或者是你指定的文件。
提交:git commit -m ‘日志’
Linux进度条小程序与git_第16张图片
只是本地仓库有代码,远端并没有。
推送:git push
Linux进度条小程序与git_第17张图片
这里显示推送到远端成功了。
Linux进度条小程序与git_第18张图片
添加成功了。

git基础指令

查看当前状态:

git status

他能告诉你当前目录有哪些目录被修改过,哪些被重命名过,哪些没被管理等等:
Linux进度条小程序与git_第19张图片
Linux进度条小程序与git_第20张图片
提交之后就发生了变化。
Linux进度条小程序与git_第21张图片
最后进行推送,然后回到上级目录进行查看:
Linux进度条小程序与git_第22张图片
本地和远端的信息时同步的。
对仓库中的内容进行重命名

git mv 被更改文件的名字 更改之后的名字

Linux进度条小程序与git_第23张图片
这个是我之前推送了一个test文件
之后添加,提交,推进。
Linux进度条小程序与git_第24张图片
Linux进度条小程序与git_第25张图片
Linux进度条小程序与git_第26张图片
这里修改成功了。

同步远端和本地仓库数据
如果在远端仓库中修改了我们提交的内容,本地再想提交新内容的时候会发生冲突,这时候就要靠这一行命令解决问题:

git pull

Linux进度条小程序与git_第27张图片
Linux进度条小程序与git_第28张图片
这是git push之后的报错。
Linux进度条小程序与git_第29张图片
使用git pull之后也是一堆报错,不过这里退出就可以了。
然后再进行git push就可以了。
Linux进度条小程序与git_第30张图片
Linux进度条小程序与git_第31张图片
Linux进度条小程序与git_第32张图片
紫色地方是我再远端新加的内容。
删除远程仓库中的内容

git rm 你要删除文件名

然后提交,推送。
Linux进度条小程序与git_第33张图片
Linux进度条小程序与git_第34张图片

记录git使用的日志:

git log

Linux进度条小程序与git_第35张图片
越往上越靠近你最近操作的时间。

你可能感兴趣的:(Linux,笔记,linux,git,运维)