考慮到大家以前可能對版本控制工具和Linux命令行工具都不了解,我寫了一個簡單的博客來讓大家學會入門使用方法。
Sign up for GitHub
,填寫用戶名,郵件地址和密碼。注意:
- 用戶名只能包含字母和"-"字符
- 密碼至少包含一個字母,一個數(shù)字和七個字符
Create an account
,創(chuàng)建賬號。Finish sign
完成注冊。現(xiàn)在,你的GitHub賬號就創(chuàng)建好了。請先在你的注冊郵箱中完成郵件驗證,然后可以看看GitHub提供的新手文檔,我們也提供了這一文檔的中文版。
Settings
。Personal settings
(個人設(shè)置)中選擇OAuth applications
,再在右側(cè)選擇Developer applications
。Register a new application
,填寫應用名稱,你的主頁,應用描述和回調(diào)URL。Register applciation
注冊應用,注冊成功后,記住下一頁中的Client ID和Client Secret值。OK,現(xiàn)在你就可以使用此Client ID和Client Secret做GitHub三方登錄了。
Download
,下載對應的exe文件,注意你的操作系統(tǒng)是32位還是64位。Git Bash here
。注意,你的代碼路徑也應是純英文的。hello-world
倉庫mkdir hello-word
,創(chuàng)建一個新文件夾。你可以使用ls
命令來查看當前目錄下有哪些文件和文件夾。cd hello-world
進入新文件夾,注意在輸入命令時,你可以用Tab
鍵來自動補全。git init
初始化Git倉庫。此時用ls -a
查看當前目錄,可以看到多了一個.git/
的文件夾,此文件夾保存了版本控制的所有相關(guān)信息。注意,在此處使用的所有命令,如果你是在Linux環(huán)境下開發(fā),用法都是完全一樣的。所以對于完全沒有Linux使用經(jīng)驗的學員,這也是一個開始接觸Linux工作方式的好方法。
接下來,讓我們創(chuàng)建一份簡單的說明文件,并提交到版本庫中。
echo "This is a simple practise" > readme.txt
,創(chuàng)建一個readme.txt
文件。git status
查看當前版本庫狀態(tài),在Untracked files
(未跟蹤文件)下,會出現(xiàn)紅色的readme.txt
,代表此文件還未被Git所管理。git add readme.txt
,將該文件加入緩沖區(qū),如果你確定所有的修改都需要提交,可以使用git add .
來加入所有修改?,F(xiàn)在用git status
查看,將看到文件名變?yōu)榫G色。git commit -m "This is my first commit via Git!"
來提交修改,-m后面所帶的參數(shù)是本次提交信息,一般用來記錄本次提交的主要意圖。git log
查看歷史提交記錄。每個記錄都會有提交id,作者和提交日期。git branch
查看當前有哪些分支,當然,因為我們沒有創(chuàng)建任何分支,目前只會有一個master
分支。git checkout -b feature
創(chuàng)建一個名為feature
的分支,再用git branch
查看一下。以上是最最基本的Git操作,大家可以在此hello-world
項目中隨意嘗試各種其他Git命令,最好的參考資料是Pro Git book。
注意:學會Git的唯一方式是在實際使用中學習,切記不要嘗試先記住一大堆理論知識或者Git命令。
Clone or download
,然后在彈出窗口中點擊剪切板圖標,復制倉庫的URL。git clone https://github.com/feicui-android/Hello-World.git
,下載項目源碼。cd
到項目文件夾下,使用git log
能看到我們的歷史提交記錄。git checkout commitId
,看完后要回到最新代碼,使用git checkout master
。你可以在我們的代碼基線上任意修改,但為了下載新代碼時不出現(xiàn)沖突,請遵循以下步驟:
git pull
。master
出撿出一個新的分支:git checkout -b feature
。feature
是分支名稱,你可以隨意取名,但請用英文。git commit -m "some message"
。git checkout master
,然后更新git pull
。git branch -D feature
,注意執(zhí)行此命令后分支被強制刪除,無法恢復。