- git為一種版本控制軟體,所謂版本控制就是你可以針對在檔案中,你曾經動過的地方做控管,也就是說你可以隨時回到之前的版本中
- 為了達到第一點的方便性,請在打完一個段落後進行commit,commit的內容一定要寫得相當清楚,否則你會不知道你曾經改過甚麼東西
- 在commit之前需先將改動過的東西加到 staging area,然後再用 commit進行提交
- 養成一個好習慣,在準備將檔案上傳(push)到server前,記得先檢查一下狀態,語法會在底下說明
- 一開始先進到準備新增git repository的資料夾中,如桌面之類的,指令為:
cd {資料夾路徑}
,cd
全名為change directory,意思就是離開目前的資料夾並進入目標資料夾中 - 建立一個準備變成git repository,指令為:
mkdir {資料夾名稱}
,mkdir
全名為make directory,意思就是產生一個資料夾 - 利用
cd
進入剛剛建立的資料夾中,並打上git init --bare
讓原資料夾變成一個git repository
- 一樣先進到準備下載git repository的資料夾,指令跟上述一樣
- 打
git clone ssh://{username}@{server IP}:2200/資料夾路徑
,過程中系統會要你輸入密碼,輸入後才能下載 - 下載後即可
cd
進入資料夾中,進入後可打touch {檔案名稱}
,來產生檔案,如:touch test.cs
,系統就會產生一個C#檔案 - 當打完一個段落想將資料傳到server的時候,先打
git add {檔案名稱}
,將檔案加到 staging area,如有多個檔案,可以打git add {檔案1} {檔案2}
,中間用空格隔開即可 - add完後,打
git commit -m "內容"
- 在push前打
git status
看有沒有遺漏的資料未加 staging area,以及需不需要將存在server中的資料先pull下來,以免造成版本衝突 - 確認都完成後即可打
git push
將檔案上傳到server中
- 新增
.gitignore
,此檔案是讓你在push的時候可以忽略哪些檔案,如:在.gitignore
中打上*.cs
,那你在push的時候就不會讓任何.cs
檔push上去 - 想知道這個repository有多少條commit,可以打
git log
- 想回復到之前的commit,可以打
git reset --hard
後面接commit的條碼,如:git reset --hard 446b0eb
- 新增標籤,可以打
git tag
,詳細語法為:git tag -a 版本名稱(如:v1.0) -m "版本內容"
,之後打git push origin {版本名稱}
即可上傳版本 - 如果覺得
git add {file1} {file2} ...
太過麻煩可以用git add -A
一次把所有檔案加入staging area - 若不慎把檔案加到 staging area,可以用
git reset HEAD {filename}
進行 unstage - 不小心改到某個檔案的內容,可以用
git checkout -- {filename}
恢復原狀