學習本文之前首先了解兩個概念,Git 和 Github。
Git是一款免費、開源的分佈式版本控制系統,簡單來說,就是一個管理你的「代碼的歷史記錄」的工具
Github是用Git做版本控制的代碼託管平臺,它提供了web界面,你可以在上面創建資源倉庫來存放你的項目。
本文適合Git新手,幫助你學習Git圖形化界面操作,快速上手然後進行工作。
1、註冊Github賬號
step 1: https://github.com 註冊地址 輸入暱稱,郵箱,密碼註冊
Step1: Github 賬號註冊頁面
step2: 選擇你的私人計劃(personal plan),即選擇免費用戶還是付費用戶,免費用戶只能創建開源倉庫,也就是所有人都可以看你的項目。
Step2: 選擇免費用戶
step3: 登錄註冊的郵箱,驗證賬號。
2、創建倉庫
Step1: 創建倉庫
Step2: 填寫一些資料
Step3: Github上的項目頁面(圖片來源http://blog.csdn.net/android_zyf/article/details/64175941)
3、安裝GitHub Desktop
下載地址:https://desktop.github.com/ 選擇適合你的版本下載
安裝好GitHub Desktop後,第一次運行時需要輸入GitHub.com的用戶名和密碼
GitHub Desktop 的界面
4、創建本地倉庫
Step1: new Repository
Step2: 填寫倉庫名字、描述,選擇存放地址
Step3: 在文件夾打開
Step4: 添加自己到項目文件
Step5: 提交改動
5、提交改動到遠端(Github.com)
推送到本地到倉庫到遠端
成功之後,就可以在自己到Github 項目頁面看到新提交到項目了。通過GitHub Desktop你已經能夠把本地的項目文件跟遠端(Github.com)上的項目關聯起來。
Github.com 個人項目頁
6、從遠端拉取倉庫
除了本地創建倉庫推送到遠端,我們也可以從遠端拉取項目(Clone)
Step1: 進入自己的項目頁面,複製項目地址
Step2 回到Github Desktop
Step3: 粘貼地址,Clone
7、本地提交和推送
成功從遠端拉取項目之後,你可以使用自己喜歡的編輯器打開,編輯好文件之後,再提交改動到遠端
Step1: 本地提交
此時提交仍然是屬於本地的,如果需要提交到遠端(Github.com)還需要進一步推送
Step2: 點擊Push origin 就可以推送到遠端
8、版本回滾
通過第7步,可以輕鬆的看到自己對項目的改動,哪怕只是改了一個空格,一個分號,都會有清晰的顯示,再也不用害怕不小心改錯地方了。
是不是非常的愉快,那如果改完之後又後悔了,有沒有後悔藥?
答案是,當然有,你可以輕鬆的回到任何的一次修改。
情況一,你還沒提交代碼,這時候最簡單,只需要文件右鍵"Discard Changes" 放棄更改即可
Discard Changes
情況二,你已經提交代碼,操作也非常簡單,右鍵選擇"Revert This Commit" 恢復到當前提交
Revert This Commit
9、新增分支
創建和切換分支到操作很簡單,關於分支到概念 請看 阮一峯的 Git分支管理策略
step1: New Branch
step2: 填寫分支名字
10、合併分支
現在我在dev開發分支上做了添加了login.html,那麼如何合併到master分支呢?
dev分支
首先,我們需要切換到Master分支,
Step1: 切換分支
Step2: 合併到當前分支
Step3:把dev的變化合併到master分支
此時,你會發現master分支上的提交歷史已經有了“添加login”這個改動,這說明合併已經成功。
11、解決衝突
以上操作,一個人玩的時候溜溜的,很愉快,但實際工作中,經常是多人一起開發,這時候,兩個人同時改了同一個地方,就會出現衝突的情況。
比如我在dev分支和master分支對同一個地方進行改動,
dev分支
master分支
在合併分支的時候就會出現衝突
這時候,點擊關閉提示,再看 Changes, 衝突的文件已經列出來
衝突在GitHub Desktop的體現
我們可以在編輯器中修改,
衝突在編輯器中的體現
必須注意的是,解決完衝突的代碼不能有 <<<<<<< HEAD ======= >>>>>>> dev 這些標記
解決完衝突的代碼
提交解決衝突後的合併
12、Fork 別人的項目
通過前面的步驟,日常的工作已經能輕鬆進行,但Github除了託管自己的項目,上面也彙集了大量優秀的開源項目,我們如何快速的克隆別人的項目?
以Vux項目爲例子:
vux 的項目頁
Fork之後,我們已經克隆了一個作爲自己的項目版本,可以進行任意的開發和學習
現在我們也有一個vux項目了
在做了一些創造性開發之後,你可以向原作者提交合並的申請,
點擊New pull request
合併的請求
這時候原作者就會收到一個合併請求,他可以通過審覈你的提交,來決定需不需要合併。
小結:
以上主要是GitHub Desktop的簡單使用教程,圖形化的界面非常容易上手,很適合Git的新手快速學習和使用。
除了GitHub Desktop其實還有一款Git的客戶端也非常好用,小編現在的工作團隊也正在使用,操作跟GitHub Desktop大同小異,兩者的易用性嘛,仁者見仁。
下面放一張主界面圖片預覽一下,SourceTree下載地址
SourceTree