說明:以下對Git的介紹只針對于Window系統(tǒng),Linux和Mac系統(tǒng)暫不介紹;
Git是什么?
1.什么是版本控制?
版本控制是指對若干個文件內(nèi)容進行修改時,可以對修改的文件進行歷史查閱和修訂的控制系統(tǒng);例如:在word中對內(nèi)容進行修改之后,可以通過撤銷的操作恢復之前的狀態(tài);而版本控制就像增強版的word,它可以回退到某個時刻的內(nèi)容,并且可以比較當前時刻和某一時刻修改的內(nèi)容差異等操作;目前主流的版本控制工具有Svn和Git;本篇主要針對Git進行介紹;
2.分布式和集中式?
關于Git的分布式和集中式的介紹請參考以下文章
3.我們?yōu)槭裁葱枰姹究刂?/h6>
如果擁有版本控制,你就像擁有時光機一樣,任性的想回退到任何時刻文件的修改記錄;
Git基本用法
安裝Git
根據(jù)官網(wǎng)提供的下載鏈接進行下載即可;
這里就不講述具體安裝教程,直接用默認安裝就行了,需要注意的將git配置到window環(huán)境變量path中(安裝時默認配置好的)。這個決定這你通過命令行在任何硬盤位置上能夠使用Git命令;在cmd輸入git --version打印相應版本號。如圖所示:

Git基本命令用法
第一步:在電腦上新建個testpro空文件夾,通過cmd定位到該文件夾中。并通過git init命令初始化testpro目錄為倉庫目錄 。初始化成功后testpro空目錄中會多個.git目錄,如下圖所示:
備注:如果電腦上沒有顯示.git目錄,說明系統(tǒng)設置不顯示隱藏目錄。通過以下鏈接進行設置即可顯示.git目錄;
https://jingyan.baidu.com/article/90808022bc6381fd90c80f63.html
第二步:在testpro新建個test.txt文本文件。文件從工作目錄到版本流動過程:工作區(qū)(紅色提示)——》暫存區(qū)(綠色提示)——》版本庫(無任何提示)。這些環(huán)節(jié)缺一不可;如下圖所示:
以上使用的git命令有
git status:查看當前文件的Gitt狀態(tài);
1.紅色提示:文件在工作區(qū)還沒添加至暫存區(qū);(上圖步驟一)
2.綠色提示:文件添加到暫存區(qū),還沒有提交到版本庫中(一般情況);(上圖步驟二)
3.無任何提示表示當前工作區(qū)目錄很干凈,沒有需要添加或提交的文件;(上圖步驟三)
git add 文件名/.:將文件添加至暫存區(qū)??梢灾付硞€文件,也可以用通配符.表示全部文件
git commit -m "提交記錄描述":將暫存區(qū)的文件提交至版本庫中,最后的環(huán)節(jié);
以上是基本使用,當然git不僅這些功能和命令。它還有分支和版本回退功能,有興趣可以擴展了解下git的其他命令和功能;git命令很多,不必要全部記住,只要記得一些常用的命令即可。以下是我個人常用命令,僅做參考:
1.git init;2.git status;3.git add;4.git commit;5.git clone;6.git rm;7.git reset;8.git log;9.git branch;10.git merge;11.git checkout;12.git pull;13.git push;14.git remote;
官方文檔參考地址:https://git-scm.com/docs/
Git中工作區(qū)、暫存區(qū)、版本庫的基本概念
Git怎樣與GitHub的關系,怎樣將兩者進行關聯(lián)
第二問:Git中工作區(qū)、暫存區(qū)、版本庫這3個是什么意思?
在Git有工作區(qū)、暫存區(qū)、版本庫這三個缺一不可的概念;
Git怎樣管理我們的文件?
什么是工作區(qū)、暫存區(qū)、版本庫;
- 工作區(qū):在某目錄下通過git init命令設置成通過Git管理的文件夾時,這個文件夾里的內(nèi)容就是工作區(qū);
- 暫存區(qū):可以理解為是工作區(qū)和版本庫的中轉站,每次將修改提交至版本庫都必須通過git add 命令將修改放置在暫存區(qū)中;
-
版本庫:是修改最終存放的位置,也可以理解為通過git init命令生成的隱藏.git目錄為版本庫;
image
以上圖可知,.git目錄包含暫存區(qū)和版本庫。其中index區(qū)域為暫存區(qū),而master主分支區(qū)域為版本庫;
分支:分支從詞面上理解就是從一個系統(tǒng)或主干中生成新的子系統(tǒng)或子支干,所以分支有主次之分。
分支是Git獨特之處。在Git中,一般master為主分支(唯一的),我們可以在不影響主分支的情況下生成新的分支來記錄版本修改。以免多人同時操作主分支,容易造成提交沖突問題。影響開發(fā)主線;注意在Git中系統(tǒng)中,只有一個主分支,并由系統(tǒng)主動生成,我們通過"git branch xxx"命令生成的分支一般屬于次分支;分支結構如下圖所示:
總結:分支可以從其他分支的任何節(jié)點衍生出另一個新分子,分支也可以重新合并到其他分支。同時在同一分支的不同分支節(jié)點可以衍生出同名分支;