浅谈自我对git的初步认识

时间:2021-11-09 01:01:39

本学期我们新增了一门课程,那就是软件工程,不知道为什么,感觉有种莫名的高大上。哈哈!难道是这个名称太抽象了吗?这个问题我感觉到后来肯定就明白了。

第一次博客,感觉好紧张哦,嘿嘿!老师让我们谈谈对git的认识,说实在,这个词语我是第一次听说。然后我登录了github的网站,哇!都是英语啊!这个对于一个英语半文盲的我可怎么办呢?心里有种莫名的恐慌,按照老师的要求我注册了github的账号,接下来,就是查询一些关于git的资料,对git有了初步的理解与认识!

我感觉要想对git有初步的了解,先对我们的课程有个认识,毕竟,我们学习的是软件工程这门课程,老师让我们认识git。那么,我们先来看看课本上面对软件工程的定义:软件工程是把系统的,有序的,可量化的方法应用到软件的开发,运营和维护上的过程。撇下课本,说说自我对软件工程的理解:如果把一个软件开发的过程比喻成建设高楼一样,那么软件工程就是楼房的施工图纸,施工方案,解决施工过程中遇到的各种问题,争取把楼房建设的不但豪华,而且坚固。可以说,软件工程就是软件生命周期的保护伞,解决软件出现的各种问题!

接下来我在谈谈对git的认识,先来看一下git出现的背景,公元的某一天,Linux内核源代码版本控制系统的作者因突然宣布说我的这个版本控制系统不再免费,很多Linux内核开发者慢慢弃用这个软件。Torvalds大神决定寻找新的替代品,新的替代品必须符合几个要求:开源免费,高性能,支持分布式,支持非线性工作流,安全健壮,找了一段时间,发现没有符合要求的版本控制系统。这该肿么办呢?这个肯定难不倒大神,大神决定自己撸一个,大概花了不到2周的时间,一个可用的版本搞出来了,经过压力测试,分支合并速度贼快,大神很满意,于是乎用于Linux内核项目了。随着功能的不断完善,越来越多的开发者使用git来管理他们的代码,git就这样在开发者之间流行起来了。git来自于英国的俚语,意为“不受欢迎的人”,在git帮助文档中,大神把它描述为“傻瓜内容追踪器”,大神还是一位很有个性的人呵!言归正传,我们来看一下git的概念:  git 是一个快速、可扩展的分布式版本控制系统,它具有极为丰富的命令集,对内部系统提供了高级操作和完全访问。git与你熟悉的大部分版本控制系统的差别是很大的。也许你熟悉Subversion、CVS、Perforce、Mercurial 等等,他们使用“增量文件系统” (Delta Storage systems), 就是说它们存储每次提交(commit)之间的差异。git正好与之相反,它会把你的每次提交的文件的全部内容(snapshot)都会记录下来。理论上,git可以保存任何文档,但是最善于保存文本文档,因为它本来就是为解决软件源代码(也是一种文本文档)版本管理问题而开发的,提供了许多有助于文本分析的工具。对于非文本文档,git 只是简单地为其进行备份并实施版本管理。

那么什么“版本控制系统”呢?请看下面的介绍。版本控制系统是记录下所有文件的所有版本,可以有效地追踪文件的变化。当代码出错的时候,可以很容易地恢复到之前的状态。对于多人协作开发的项目来说,版本控制系统更是必不可少。它保证每个人都能够获取最近更新的代码,每个人开发的代码可以更方便地增加到项目中,避免不同代码之前产生的冲突,减小沟通成本。而git就是时下最流行的版本控制系统。

自我对git的认识是:git就是为软件的源代码管理而服务的,说白了也是软件工程的一个分支,那么本质上都是为制作一个优秀的软件做后台保障的!git与软件工程就是一家人!

这就是我对git的初步认识,这也是我第一次写博客,感觉萌萌哒,哈哈,有不好的地方,欢迎读者批评指正!

浅谈自我对git的初步认识的更多相关文章

  1. 浅谈GitLab与Git

    前言:先解释下关于库的认识. Workspace:工作区 Index / Stage:暂存区 Repository:仓库区(或本地仓库) Remote:远程仓库 一.新增项目(远程仓库) 在GitLa ...

  2. 开发工具--浅谈Git

    工具|浅谈Git Git这个工具,是我一直想写文章,终于我实现了我的想法.在我开始写之前,发表一下自己的看法,git只是一个工具,既然已经认定是一个工具,那么一定具备工具这类的共同特征,请用面向对象的 ...

  3. 浅谈GIT

    浅谈GIT: 牛老师提出的git,于我而言,是一个陌生和新鲜的词汇,在此之前我从未听过git,按照老师的要求,我去搜索了关于git的介绍,有些看懂了,但大部分还是不懂得,在介绍中我了解git其实之前使 ...

  4. Git浅谈随笔之---如何工作

    其他的版本控制工具我们常见的还有SVN,关于这两者的区别,我们不多谈,详见 Git 与 SVN 的区别 : Git是一种版本控制工具.用来记录文件内容的变化,备以后查阅某个版本的情况的系统:我们在Gi ...

  5. 浅谈Hybrid技术的设计与实现第三弹——落地篇

    前言 接上文:(阅读本文前,建议阅读前两篇文章先) 浅谈Hybrid技术的设计与实现 浅谈Hybrid技术的设计与实现第二弹 根据之前的介绍,大家对前端与Native的交互应该有一些简单的认识了,很多 ...

  6. 《Machine Learning in Action》—— 浅谈线性回归的那些事

    <Machine Learning in Action>-- 浅谈线性回归的那些事 手撕机器学习算法系列文章已经肝了不少,自我感觉质量都挺不错的.目前已经更新了支持向量机SVM.决策树.K ...

  7. iOS开发之浅谈MVVM的架构设计与团队协作

    今天写这篇博客是想达到抛砖引玉的作用,想与大家交流一下思想,相互学习,博文中有不足之处还望大家批评指正.本篇博客的内容沿袭以往博客的风格,也是以干货为主,偶尔扯扯咸蛋(哈哈~不好好工作又开始发表博客啦 ...

  8. 浅谈Hybrid技术的设计与实现第二弹

    前言 浅谈Hybrid技术的设计与实现 浅谈Hybrid技术的设计与实现第二弹 浅谈Hybrid技术的设计与实现第三弹——落地篇 接上文:浅谈Hybrid技术的设计与实现(阅读本文前,建议阅读这个先) ...

  9. 浅谈HTTPS以及Fiddler抓取HTTPS协议

    最近想尝试基于Fiddler的录制功能做一些接口的获取和处理工作,碰到的一个问题就是简单连接Fiddler只能抓取HTTP协议,关键的登录请求等HTTPS协议都没有捕捉到,所以想让Fiddler能够同 ...

随机推荐

  1. Debian 8安装中文字体

    1.使用的镜像是debian-8.3.0-amd64-kde-CD-1.iso,下载链接可在Debian网站找到,系统安装完成后中文显示为方框 2.安装字体 apt-get install xfont ...

  2. 错误:E:Unable to locate package &period;&period;&period;

    安装NFS软件包: sudo apt-get install nfs-common 安装tftp软件: sudo apt-get install tftpd-hpa tftp-hpa 均出现此错误:E ...

  3. respberry pi3 上手随记

    入门篇: raspberry 官网: https://www.raspberrypi.org/ 各个系统镜像下载地址: https://www.raspberrypi.org/downloads/ 树 ...

  4. 结合DDE指标来分析成本分布的重要作用

    筹码分布集中度90和70是什么意思? (2015-08-14 12:12:27) 转载▼ 标签: 股票 分类: 成交量能.筹码分析   那个集中度90,和集中度70,90和70是什么意思??集中度最大 ...

  5. jstl的forEach使用和jstl变量实现自增

    <c:forEach items="${reallyChooseSubjectList}" var="reallyChooseSubject"> & ...

  6. Java7 新特性 数值文本表示法

    今天和大家分享下 java7中新特性-数值文本表示法 首先,在原来jdk1.6中 如果需要将一个二进制的数值转换成十进制的话,一般情况下都会以下面的代码方式去实现. public static voi ...

  7. ERP 推式 拉式 工序拉式 装配拉式 倒冲

    ERP 推式  拉式  工序拉式   装配拉式   倒冲 以上為生产订单(wip)中的原料供应方式,最常用的有Pull和Push. PULL即拉动方式: 拉式生产是生产为主,原材料是由专门的配送人员按 ...

  8. 【转】各个层次的gcc警告 &num;pragma GCC diagnostic ignored &quot&semi;-Wunused-parameter&quot&semi; --不错

    原文网址:http://blog.csdn.net/lizzywu/article/details/9419145 各个层次的gcc警告从上到下覆盖 变量(代码)级:指定某个变量警告 int a __ ...

  9. Extjs树形控件入门

    Extjs树形控件由Ext.tree.TreePanel类定义,控件的名称为TreePanel,TreePanel继承自Panel类,在Extjs中使用树形控件其实很简单. 大家知道要使用Extjs必 ...

  10. 《JS权威指南学习总结--8&period;7 函数属性、方法和构造函数》

    内容要点:   在JS程序中,函数是值.对函数执行typeof运算会返回字符串 "function",但是函数是JS中特殊的对象.因为函数也是对象,它们也可以拥有属性和方法,就像普 ...