【Day03】Git 版本控制 - 什麽是 Git

有些工程师的至理名言是:「人生不能重来,但是 Git 可以。」

所以,什麽是 Git?
维基百科说:「Git 是一个分散式的版本控制系统,最初目的是为了更好地管理 Linux 核心开发而设计」。

有些人会将 Git 跟 GitHub 两者搞混,以为两个就是同一个东西,但其实 Git 只是一个版本控制系统,而 GitHub 则是使用 Git 来管理档案的一个平台。
而且,使用 Git 进行管控的平台不仅仅只有 GitHub,还有 GitLab、Bitbucket 等等(後续会再继续进行介绍)。

那麽,为什麽版本控制系统那麽多种,而 Git 却是全世界最多人使用的一种呢?

优点如下:

  1. 开源免费软件:Git 仅花了 10 天就开发出来,至今已有十几年的历史(2005 年开发)。除了免费使用外,整个 Git 的原始码也能在网路上取得。
  2. 分散式的版本控制系统:用户对服务器的依赖性降低。
  3. 速度快、体积小:Git 采用快照方式取代复制贴上,建立和切换分支速度非常快。
  4. 功能强大:Git 最为出色的是它的合并追踪(merge tracing)的能力(後续会再进行介绍)。

Git 拥有很多优点,但却没有那麽容易上手,其实原因很简单,因为 git 基本上是使用 command 下指令的(虽然现在也有 GUI 介面,但本篇文会以指令操作为主),只要了解他的运作原理、指令意思 Git 就不会那麽困难了,还会成为撰写程序的重要工具!


那麽 Git 到底是怎麽运作的呢?
我们可以简单透过下面这张图来进行理解,Git 有分成本地数据库(Local Repository)跟远端数据库(Remote Repository)

本地数据库(Local Repository)
顾名思义就是在你电脑上的数据库,要将档案放到本地数据库上需要先放到索引中,再由索引一次将所有档案 commit 到本地数据库上。

远端数据库(Remote Repository)
而远端数据库就是像 GitHub、GitLab、Bitbucket 这类的平台,需要将档案推送到远端数据库才能跟其他使用者一起共同创作。

相信大家都对 Git 更加了解了!要如何将档案放进数据库以及各大平台的使用与介绍会在後续文章中更详细解释!

Reference

git
Git — 为你自己学 Git


<<:  Spring Framework X Kotlin Day 13 Message Queue

>>:  [Day 10] SRE - ON-CALL

C# Lambda

Lambda expression 於 C# 3.0 开始提供, 可以使用 lambda 运算式来建...

【Day12】原始型别及物件型别

JavaScript 中型别主要分为原始型别和物件型别两种 原始型别 原始型别中包含七种型别, 而这...

29.Getter and Mutation

Vuex内的getter,相当於component内的computed,作用都是改变资料的表示形式 ...

Day24 NiFi 延伸应用 - Slack & Email

有时候 Data Pipeline 可能会因为一些原因出现一些问题,像是网路问题、OOM、资料格式不...

Day 20 什麽是「长尾关键字」?

我们提到设置关键字有些方法,让搜寻者可以更快找到他要的资源,而在关键字设定时,也会找些常委关键字来搭...