Day 2 : Git 基本操作

前言

Git简单的来说,就是版本控管工具,几乎所有的软件业求职,都要求你必须要能够先有Git的技能。不难理解,现代的系统庞大,已经不再是单打独斗的时代了,现在讲求团队共进退。但是团队合作就会有摩擦。

  1. 我要怎麽看到你昨天写好的程序?
  2. 你我同时修改一份文件该怎麽决定谁的要上去?
  3. 我把code写坏了,该如何回复之前可以RUN的版本来更详细的检查错误?

这些就是为什麽你要使用GIT!

Git 安装

git 的安装非常简单,如果你是Windows前往https://git-scm.com/ 直接下载即可; 如果你是Linux如Ubuntu则可以输入sudo apt-get install git-all。之後的文章以Windows为例子,Visual Studio Code作为开发工具做说明。

Windows安装完成後会多了一个十分好用的工具,GIT CMD。他可以在windows内使用linux指令如lsclear,是一个值得加入工具列的好东西。
https://ithelp.ithome.com.tw/upload/images/20210902/20119044DYUBhGVcq4.png

但是我们这里不用GIT CMD,我们来用来用Visual Studio开发。这里推荐两个好用的Git相关模组。

  • Git History (画出漂亮的Git logs图)
  • Git Lens (方便对比code)

https://ithelp.ithome.com.tw/upload/images/20210902/2011904449rjthcCAk.png

Git 的使用 part 1

一个专案要怎麽开启版本控管? 输入 git init
https://ithelp.ithome.com.tw/upload/images/20210902/20119044LpRPuwQJoM.png
之後在当前目录底下会自动新增一个.git目录。该目录会记录下此当前目录的所有资讯,那些程序修改、有哪些branch、现在HEAD在哪...等。

我们可以将写好的code分成三个区块的历程。
https://ithelp.ithome.com.tw/upload/images/20210903/20119044XgMmRSngVo.png

  • 工作区 : 修改程序的地方
  • 缓冲区 : 将暂时修改好的程序保存起来
  • 归档区 : 永久的保存此次更新

档案具体在哪一区可以用git status来查看

具体步骤是怎麽样呢? 假如我今天新增了一个Apple.txt里面写上one Apple。那麽这个档案就会处在工作区中,代表档案随时都会变动。

输入git add Apple.txt,将Apple.txt放入缓冲区中,代表暂时保存起来。这个暂时保存是随时都可以覆盖过去的,我可以修改文件成two Apple然後重新git add。此外,如果要add的档案太多了,可以用git add .将当前目录下所有档案都add进去。

如果你认可了此次的修改,你想要永久保存起来,可以下git commit -m "modify Apple",将缓冲区的所以修改归档在归档区,如此便成为了一次修改完成。-m後面接的注解便是你为了这次的修改所做的注解。commit後也会自动生成是谁commit、时间....等相关讯息。通常我们完成一个任务就会commit一次,不论这个任务是大是小。

输入git log就可以看到此次的commit了。
https://ithelp.ithome.com.tw/upload/images/20210903/201190449dzFHmsQYU.png


<<:  Rails has_many

>>:  Day 02 | Laravel Livewire 基本介绍

Day 25: 准备假的Coroutine,让外面世界不会影响我!

Keyword: Coroutine mock 直到27日,完成KMM的测试功能放在 KMMDay2...

【Day18】物件与纯值

在昨天的文章有提到物件可以使用 . 来新增属性,以下使用各种型别来新增属性 物件 物件新增属性 co...

Python产生QRCode图片 - Python练习题一

Python练习题一 import qrcode import sys import os # 需要...

it行业做的工作有哪些?

(1)UI设计:UI的发展前景是很赞的,在两到三年前,甚至都有人推动让UI来代替産品经理来驱动。某种...

EC的农地辣麽大,作物辣麽多,来认真找作物了(1)ES的逐一说文解字-搜寻

来到第28天了,却觉得头很痛 ES的收寻知识点有点大,要细讲自己也讲不清楚 要粗讲,可能又讲的不清楚...