最近正在學習git,想要透過把學到的東西寫下來,來記錄一下自己學到的東西,也方便以後回顧這些知識。
剛開始寫這種類似技術性的文章,可能有很多地方寫得不好,還請高手們不吝指教。
Git是一種版本控制系統,可以幫忙管理檔案以及檔案版本的系統。一般來說,我們做專案不會一版就搞定,常常會因為哪裡有問題、客戶、上司要求等等不斷刪改,因此常會出現各種版本,像final、final1、final_new之類的。如果只是單純存在電腦,那要管理哪一版是哪一版、回復上一個版本就蠻麻煩的了。這時候,用git就可以解決這樣的問題。透過git,可以妥善管理修改前後的版本,想要回復上一動時也可以回到上一個版本。
此外,git是分散式版本控制系統(DVCS),跟中央式版本控制系統不太一樣。中央式就像是有一個核心把關,想要使用資料要跟中央請資料,且一次只能一個人使用;分散式則不同,每個人的電腦內都複製著完整的檔案快找,當需要取用時就將其取出,修改後再推至雲端。這樣的作法能夠讓多人編輯同一個專案更加容易,不同地點多人編輯檔案完全沒有問題。
以下講講git會用到的一些基本指令:git init
:在資料夾建立.git的資料夾,建立本機的repository(數據庫)。git status
:查看檔案變更的狀態。要注意的是,status只會顯示有變更的檔案,如果沒有變更則不會出現相關資訊。git add .
:將所有的檔案變更暫存。要暫存單一檔案變更可以用git add <檔案名>
。git commit -m "message"
:將檔案提交到本機的repository。加上-m
可以直接在終端機上輸入要留下的訊息,不需要另開一個編輯器。git remote add <名稱(origin)> <網址>
:新增遠端的repository到本機上。在名稱處輸入這個遠端的名稱,一般是用origin;在網址處輸入在如github等處建立的repository的網址。git push -u origin main
:將檔案推上遠端repository。-u
是指定這個repository,未來即使不再次輸入也會默認推上這裡;origin是剛剛建立的名稱;main是branch(分支)的名稱,將檔案儲存到這個分支。過去都是用master,不過近些年github改用main的樣子,想說這邊取名也用main。
假設現在有一個專案資料夾,裡面新建了一個A.html,我想要把資料夾內的這個A.html推上Github。
cd <檔案位置>
在終端機打開專案資料夾。git init
,建立本機數據庫。git add .
,把新增的A.html給暫時儲存。也可以輸入git add A.html
。git commit -m "1st version
,將暫存檔案提交到本地數據庫。引號的部分可以自由輸入想要留下的comment。git remote add origin <url>
,新增遠端數據庫到本機。git push -u origin main
,將專案推上github。以上就是git的一些基本知識,下一篇會寫要如何回復之前的版本,以及從遠端數據庫複製資料。