我們今天要來練習使用git,為什麼要使用git?因為git可以幫你儲存你每個階段的code讓你可以省去大量備份時間,而且使用 git 的 github 可以讓你的code放在雲端就可以多人合作了
首先我們要先創建 github 帳號以及下載並安裝git(一直按下一步即可)
大家都有玩過RPG嗎? 在打大boss之前、進一些感覺有陷阱的密室、又或純粹做錯決定時,玩家都會有志一同地:存檔、重來!遊戲狀態就會回到存檔時的那一刻。(若是人生也能這樣就好了QQ)
版本控制系統 (Version Control System, VCS)是一套能記錄所有修改版本、讓使用者能隨時取回特定版本的系統。
只要學會,無論寫錯任何程式碼、想重新找回被砍掉的功能、同時存多種不同版本 (交作業用/借人抄用)、多人協作時程式碼不會被意外蓋掉 (還能找戰犯)… VCS就是這麼好用的工具。
先來看一下版本控制系統的基本名詞:
Repository (數據庫/版本儲存庫)
用來保存歷史程式碼,和所有跑這個專案需要的東西,
包括所有原始碼、範例設計檔、文件等等。
Local (本地端)
通常是個人開發的電腦/機台。
Remote (遠端)
通常是一個共用的伺服器。
ssh-keygen -t ed25519 -C "<your_email@example.com>"
ssh-keygen -t rsa -b 4096 -C "<your_email@example.com>"
範例: 我gmail帳戶為jddj42840@gmail.com那我指令該輸入
ssh-keygen -t ed25519 -C "jddj42840@gmail.com"
剩下的可以先跳過(直接Enter)沒關係
.ssh
目錄,並將用記事本將.pub
打開打開 github 點擊右上角的小頭像
並點擊倒數第二個 settings
點擊左邊選擇列的SSH and GPG keys
點擊 SSH keys 的New SSH key
將剛剛複製的內容放至 Key
裡面,並點擊 Add SSH Key
在表單上會看到你新增的SSH key圖示
開啟cmder並輸入 ssh -T git@github.com
輸入yes之後你會看到 Hi.....這就代表創建成功喔
我們先找一個之前做的練習並用cmder開啟,我們鍵入 git init
我們去觀察一下目錄,勾選顯示隱藏項目
我們開啟 cmder 我們輸入 git status
可已看到專案底下的檔案狀態,目前都是未被追蹤的狀態
接下來我們用 add 加入本地暫存(Straging Area),本地暫存用來判斷哪些有修改過
git add * # * 代表的是全部檔案
git status #
接下來我們使用 commit 將我們追蹤的 Code 放入本地 Repository(版本庫)
git commit -m "this is my first commit" #雙引號內的東西變你打
我們看一下,輸入git log
接下來我們要去 github創建遠端版本庫
輸入版本庫名稱並建立
這裡也有教學指令
我們按照他的指令添加數據庫,數據庫名字為origin
git remote add origin https://github.com/jddj42840/gittest.git
我們來push到遠端版本庫
push origin master # push 遠端資料庫名稱 分支(新的分支會自行創建)
成功!
好我們先來改一下我們的 code 隨便改我這裡增加一個print,我們看一下狀態git status
, 有被修改
一樣add, 一樣commit, 一樣push
我們去 github 點擊一個小時中可以看到,我們push的每一個版本
我們創建一個新分支名為 secondbranch
在 cmder 鍵入 git branch -m secondbranch
然後我們切換分支從 master 轉道 secondbranch 分支
我們看一下git 狀態,目前很乾淨
我們改個 code 改完直接add、commit
注意!!push這裡不一樣喔git push origin secondbranch
我們先修改遠端數據庫
然後我們本地 code 有改一下 ,開始嘗試 add、commit、push然後就會出現錯誤
如果使用git push -f origin secondbranch
會強制覆蓋
如果使用git pull origin secondbranch
,在vscode把遠端的拉下來。點擊小燈泡選擇還原此變更
就會變成遠端程式庫的內容
我們先推一遍再推自己修改的,推之前要先存檔喔!