iT邦幫忙

2021 iThome 鐵人賽

DAY 5
0
自我挑戰組

邊工作邊進行前端學習之旅系列 第 5

[Day 5] 認識Git,做好版本控制

  • 分享至 

  • xImage
  •  

前言

什麼是Git,剛開始認識它的時候,以為他跟GitHub 有著什麼關係或是某個簡稱,結果兩著是各自不同的東西。 Git 是一款版本控制軟體,而 GitHub 是一個商業網站。

多虧前一篇Command-Line的學習,在接觸Git指令時,比較不陌生。而在剛開始接觸Git的時候,要記得要看狀態、看紀錄、儲存步驟,有時候總是會搞混,何時該下哪個指令,這個指令又代表什麼呢,總是不斷反查,或是下錯時候,又該如何回到上個版本紀錄, 一處理就是一段時間去了。隨著現在做的實作越來越多,也養成了,順手git addgit commit,來記錄自己專案製作的過程。

學習 Git 方式

一開始學習 Git 除了參與饅頭計畫所提供的基礎課程外,還有另外閱讀高見龍老師,《為你自己學Git》 一書,網路上也能夠查詢到為你自己學Git-系列文章網站內就提供了很多 Git 教學,也有根據未來操作上可能遇到的狀況,提供相對應的解決方式。

在學習的過程會先認識Git主要功用是什麼?該如何安裝?認識基本指令,並藉由後續的操作練習來熟悉指令。另外《為你自己學Git》中的狀況題,也有都稍微閱讀過,當遇到問題時,就能很快反應要查詢什麼關鍵字。

Git 介紹

簡易說明:就是讓大家對於自己的程式碼做版本控制「Version Control System」

如同:save load 大法
S是Save 存檔,L是Load 讀取;如:每天的工作可能都是每天新增、編輯、修改許多檔案,而git會紀錄每次檔案的修改資料

分散式控制系統「Distributed Version Control Systems」

可以和不同群組的人使用不同的方式,在同一個專案內協同合作。可讓專案主導者更精準的控制大專案內的小專案。

練習建立Git檔案

呈現終端機的指令

  • 先確認狀態 git status(表示還沒有git)
  • 創建資料夾 mkdir hello_git
  • 進入資料夾(hello_git),並初始化 git init
  • 初始完成囉,出現 master標籤
  • 再次確認狀態


可以詳細看一下資料夾內部

  • 透過ls -a可以看到git的隱藏檔

熟悉 Git 基本指令

創建hello_git資料夾後,在裡面建立hello.txt

流程:git status => git add => git commit

進入vs code,輸入hello world
注意檔案變綠色

查看 git status,會是紅色

  • 確認目前 Git 的狀態

git add

  • 使用git add +檔案名稱,並看狀態後會發現變成綠色
  • git add. 加入資料夾內所有的檔案

最後 git commit

git commit -m "add new file hello.txt"

  • 要注意 -m,以免進入vim
  • " "引號內輸入這次要儲存的動作說明,如新增檔案、修改資料等說明
    有一個檔案改變,一行的資料修正
  • 完成後,查看狀態
    nothing to commit, working tree clean,表示已把檔案加入完成

以上就是基本流程,在建立好專案後,我們可以透過Git來記錄、儲存我們的資料。

其他相關指令

除了基本指令外,還有些指令可以加以認識!
git log : 查看歷史紀錄
git clone [Repository URL] : 複製遠端的 Repository 檔案到本地端。
git branch : 查看分支。
git branch [BRANCH_NAME] : 建立分支。
git checkout [BRANCH_NAME] : 切換到該分支。
git push :將本地端 Repository 的 commit 發佈到遠端 。

結語

每次要開始專案實作時,當資料夾建立後,就會隨手 git init ,而每次執行一部分就會進行git status => git add => git commit,說明此段落完成了什麼樣式、或功能。
透過這樣的方式,我能確保檔案都是在最新的狀態,當工作忙完回來要延續前一段任務時,我也能夠快速地進入狀況。


上一篇
[Day 4 ] 步入學程式的第一關
下一篇
[Day 6 ] 想發表作品,先學會使用 Github 生成靜態網頁吧!
系列文
邊工作邊進行前端學習之旅30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言