一、Git介紹及作用
Git是一款免費(fèi)、開源的分布式版本控制系統(tǒng),用于敏捷高效地處理任何或小或大的項(xiàng)目。Git是一個(gè)開源的分布式版本控制系統(tǒng),用以有效、高速的處理從很小到非常大的項(xiàng)目版本管理。Git 是 Linus Torvalds 為了幫助管理 Linux 內(nèi)核開發(fā)而開發(fā)的一個(gè)開放源碼的版本控制軟件。
****Git的功能特性:從一般開發(fā)者的角度來(lái)看,git有以下功能:****
1、從服務(wù)器上克隆數(shù)據(jù)庫(kù)(包括代碼和版本信息)到單機(jī)上。
2、在自己的機(jī)器上創(chuàng)建分支,修改代碼。
3、在單機(jī)上自己創(chuàng)建的分支上提交代碼。
4、在單機(jī)上合并分支。
5、新建一個(gè)分支,把服務(wù)器上最新版的代碼fetch下來(lái),然后跟自己的主分支合并。
6、生成補(bǔ)?。╬atch),把補(bǔ)丁發(fā)送給主開發(fā)者。
7、看主開發(fā)者的反饋,如果主開發(fā)者發(fā)現(xiàn)兩個(gè)一般開發(fā)者之間有沖突(他們之間可以合作解決的沖突),就會(huì)要求他們先解決沖突,然后再由其中一個(gè)人提交。如果主開發(fā)者可以自己解決,或者沒有沖突,就通過(guò)。
8、一般開發(fā)者之間解決沖突的方法,開發(fā)者之間可以使用pull 命令解決沖突,解決完沖突之后再向主開發(fā)者提交補(bǔ)丁。
Git是一款開源的分布式版本控制工具
分布式與集中式的最大區(qū)別在于:在分布式式下
1、開發(fā)者可以本地提交
2、每個(gè)開發(fā)者機(jī)器上都有一個(gè)服務(wù)器的數(shù)據(jù)庫(kù)
3、擁有一個(gè)本地的代碼倉(cāng)庫(kù)
二、下載及安裝
官方下載地址:
https://git-scm.com/download/win

安裝時(shí)其他選項(xiàng)選擇默認(rèn)即可,在這里我們選擇第一個(gè)選項(xiàng)然后下一步

安裝后


三、使用Git
首先我先在我的E盤創(chuàng)建一個(gè)新文件夾(命名為GitProject)用來(lái)當(dāng)作我們的工作空間。然后我們打開Git命令工具。
先來(lái)幾個(gè)小命令看看。

git init:就是git庫(kù)初始化的命令。如你所說(shuō),在任何一個(gè)文件夾下執(zhí)行就是初始化這個(gè)文件夾,此時(shí)執(zhí)行g(shù)it status,可以看到文件夾下的所有文件都變成未被跟蹤的文件。

然后我們選擇顯示隱藏文件夾就可以看到我們新創(chuàng)建的Git庫(kù)了

然后我們?cè)僭谖覀兊墓ぷ骺臻g新創(chuàng)建一個(gè)TXT文本文檔并且命名為“123”然后在輸入以下命名
git status:可以列出當(dāng)前目錄所有還沒有被git管理的文件和被git管理且被修改但還未提交(git commit)的文件.。
**git add . :他會(huì)監(jiān)控工作區(qū)的狀態(tài)樹,使用它會(huì)把工作時(shí)的所有變化提交到暫存區(qū),包括文件內(nèi)容修改(modified)以及新文件(new),但不包括被刪除的文件。從工作區(qū)被提交到暫存區(qū),但此時(shí)文件并沒有真正進(jìn)入到版本庫(kù)當(dāng)中,文件目前只處于一個(gè)中間狀態(tài)。

git commit -m"(這里輸入命名)":(將暫存區(qū)文件提交到版本庫(kù)中):這個(gè)命令將處于中間狀態(tài)的文件(暫存區(qū)的文件)提交到版本庫(kù)中,這時(shí)才算真正完成了一次提交過(guò)程。
此時(shí)文件發(fā)生了改動(dòng),如果希望將修改后的文件提交至版本庫(kù),必須先git add將修改后的文件存入暫存區(qū),再git commit將文件從暫存區(qū)提交至版本庫(kù)才可以,這和svn有很大的區(qū)別,SVN在添加新文之后每次修改的文件直接commit就可以了。

git log
** 查看提交歷史:在提交了若干更新之后,又或者克隆了某個(gè)項(xiàng)目,想回顧下提交歷史,可以使用 Git log 命令查看。

然后我們?cè)?23.txt文本里面隨便輸入一些東西并且保存


git reset --hard HEAD^:代表回退到上一個(gè)版本
git reflog: 可以查看所有分支的所有操作記錄(包括(包括commit和reset的操作),包括已經(jīng)被刪除的commit記錄,git log則不能察看已經(jīng)刪除了的commit記錄
然后我們發(fā)現(xiàn)我們做錯(cuò)了想回去,就要用到git reset --hard HEAD^,回退后可以打開我們的記事本看到我們?cè)诶锩孑斎氲膬?nèi)容沒了代表我們回去了,然后我們查看我們所有的歷史記錄包括commit和reset的操作就要用到git reflog**

*** git reset --hard (這里輸入想要恢復(fù)的版本號(hào)):***返回以前刪除的版本
然后我們發(fā)現(xiàn)我們刪錯(cuò)了,怎么樣才能返回以前刪除的版本的這里就要用到我們上面的命令了。
