Git簡介_安裝_使用教程
Git簡介
Git優勢
分散式:Git版本控制系統是一個分散式的系統,是用來儲存工程原始碼歷史狀態的命令列工具。
儲存點:Git的儲存點可以追蹤原始碼中的檔案, 並能得到某一個時間點上的整個工程專案的狀態;可以在該儲存點將多人提交的原始碼合併, 也可以回退到某一個儲存點上。
Git離線操作性:Git可以離線進行程式碼提交,因此它稱得上是完全的分散式處理,Git所有的操作不需要線上進行;這意味著Git的速度要比SVN等工具快得多,因為SVN等工具需要線上時才能操作,如果網路環境不好, 提交程式碼會變得非常緩慢。
Git基於快照:SVN等老式版本控制工具是將提交點儲存成補丁檔案,Git提交是將提交點指向提交時的專案快照,提交的東西包含一些元資料(作者,日期,GPG等)。
Git的分支和合並:分支模型是Git最顯著的特點,因為這改變了開發者的開發模式,SVN等版本控制工具將每個分支都要放在不同的目錄中,Git可以在同一個目錄中切換不同的分支。
分支即時性:建立和切換分支幾乎是同時進行的,使用者可以上傳一部分分支,另外一部分分支可以隱藏在本地,不必將所有的分支都上傳到GitHub中去。
分支靈活性:使用者可以隨時建立、合併、刪除分支,多人實現不同的功能,可以建立多個分支進行開發,之後進行分支合併,這種方式使開發變得快速、簡單、安全。
安裝Git
註冊GitHub
Git使用
Git常用命令
安裝及配置:
Ubuntu下安裝:sudo apt-get install git
git config --global user.name "你的名字"
配置e-mail:git config --global user.email "你的郵箱@xx.com"
與新增有關的:
將當前目錄變為倉庫:git init
將檔案新增到暫存區:git add 檔名 [可選:另一個檔名]
將暫存區提交到倉庫:git commit –m "描述"
與查詢有關的:
查詢倉庫狀態:git status
比較檔案差異(請在git add之前使用):git diff 檔名
檢視倉庫歷史記錄(詳細):git log
檢視倉庫歷史記錄(單行):git log --pretty=online
git log --online
檢視所有版本的commit ID:git reflog
與撤銷有關的:
撤銷工作區的修改:git checkout -- 檔名
撤銷暫存區的修改:git reset HEAD 檔名
回退到歷史版本:git reset --hard 該版本ID
回退到上個版本:git reset --hard HEAD^
上上版本是HEAD^^
,也可用HEAD~2
表示,以此類推
與標籤有關的:
為當前版本打標籤:git tag 標籤名
為歷史版本打標籤:git tag 標籤名 該版本ID
指定標籤說明:git tag –a 標籤名 –m "標籤說明" [可選:版本ID]
檢視所有標籤:git tag
檢視某一標籤:git show 標籤名
刪除某一標籤:git tag –d 標籤名
與GitHub有關的:
先有本地庫,後有遠端庫,將本地庫push到遠端庫
關聯本地倉庫和GitHub庫:git remote add origin 網站上的倉庫地址
第一次將本地倉庫推送到GitHub上:git push –u origin master
先有遠端庫,後有本地庫,從遠端庫clone到本地庫
從遠端庫克隆到本地:git clone 網站上的倉庫地址