1、Git常識java
1.工做區(Working Directory)git
工做區就是咱們可以在電腦中看到的目錄,好比我在D盤中建立的一個study文件夾,而後使用github
git init
命令完成建立版本庫的操做。ssh
這個study文件夾就是一個工做區。指針
2.版本庫(Repository)code
版本庫又名倉庫,英文名repository,你能夠簡單理解成一個目錄,這個目錄裏面的全部文件均可以被Git管理起來,每一個文件的修改、刪除,Git都能跟蹤,以便任什麼時候刻均可以追蹤歷史,或者在未來某個時刻能夠「還原」。開發
工做區有一個隱藏目錄.git,這個不算是工做區,而是Git的版本庫。it
3.暫存區ast
Git的版本庫中存放了不少東西,其中最重要的就是稱爲stage(或者叫index)的暫存區。還有Git爲咱們建立的第一個分支master,以及指向master的一個指針,叫作HEAD。class
2、Git經常使用命令
1.向Git版本庫中添加文件
分爲兩步執行:
(1)第一步是用 git add 把文件添加進去,實際上就是把文件修改添加到暫存區;
(2)第二步是用 git commit 提交更改,實際上就是把暫存區的全部內容提交到當前分支。
由於建立Git版本庫時,Git自動爲咱們建立了惟一一個master分支,因此,如今,git commit就是往master分支上提交更改。固然,咱們在實際開發的時候 會建立本身的分支,git commit提交到的分支就是咱們所建分支了。
能夠簡單理解爲,須要提交的文件修改通通放到暫存區,而後,一次性提交暫存區的全部修改。
2.從遠程倉庫克隆
命令:
git clone git@github.com:michaelliao/gitskills.git
要克隆一個倉庫,首先必須知道倉庫的地址,而後使用git clone命令克隆。
Git支持多種協議,包括https,但經過ssh支持的原生git協議速度最快。
3.分支操做
(1)查看分支
git branch -a
這個命令能夠查看到全部分支。
(2)基於遠程分支建立本地分支並切換分支。
git checkout -b <local_branch> origin/<branch>
(3)切換本地分支
git checkout local_branch
(4)刪除本地分支
git branch -d local_branch
(5)查看全部分支 以及最近的備註
git branch -va
4.工做文件操做
(1)查看狀態
git status
使用這個命令,就能夠看到本地分支都修改了哪些文件。
(2)將工做區文件修改添加到本地暫存區
git add
(3)查看文件修改了哪些地方(與之前有什麼不一樣)
git diff filename
此處的filename就是文件的名字。
(4)將暫存區的文件提交到版本庫
git commit -m "xxx備註"
(5)拉取遠程倉庫全部分支
git pull
(6)合併分支
git merge <branch>
(7)推送當前分支到遠程倉庫
git push
注意事項:
一、本地新建的分支若是不推送到遠程,對其餘人就是不可見的;
二、從本地推送分支,使用git push origin branch-name,若是推送失敗,先用git pull抓取遠程的新提交;
三、在本地建立和遠程分支對應的分支,使用git checkout -b branch-name origin/branch-name,本地和遠程分支的名稱最好一致;
四、創建本地分支和遠程分支的關聯,使用git branch --set-upstream branch-name origin/branch-name ;
五、從遠程抓取分支,使用git pull,若是有衝突,要先處理衝突。
更多的參考:
http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000