Git是一款免費(fèi)、開(kāi)源的分布式版本控制系統(tǒng),作為程序員,代碼管理除了svn之外,用的最多的就是git了,下面簡(jiǎn)單介紹下:
第一步,在gitHub上創(chuàng)建賬號(hào),何為gitHub?GitHub 是一個(gè)面向開(kāi)源及私有軟件項(xiàng)目的托管平臺(tái),只支持 Git 作為唯一的版本庫(kù)格式進(jìn)行托管,簡(jiǎn)單點(diǎn)說(shuō)就是一個(gè)用git來(lái)操作的代碼托管平臺(tái)

圖1
注冊(cè)成功并登陸后,新建一個(gè)倉(cāng)庫(kù)

圖2

圖3
這樣子我們?cè)趃itHub上的倉(cāng)庫(kù)就建好了,接下來(lái),我們來(lái)說(shuō)說(shuō)使用git
第二步,先安裝git,安裝git很簡(jiǎn)單,下載好之后,一直下一步就好了,這里我就不贅述了,不會(huì)的可以自行百度,安裝好git之后,我們打開(kāi)git bash
git的用戶(hù)配置:
git config --global user.name "你的昵稱(chēng)"
git config --global user.email "你的郵箱"

圖4
我們?cè)趂盤(pán)創(chuàng)建一個(gè)倉(cāng)庫(kù)test,并初始化:
mkdir f:/test /*在f盤(pán)創(chuàng)建目錄*/
cd f:test /*進(jìn)入該目錄*/
pwd /*查看當(dāng)前所在目錄*/
git init /*初始化倉(cāng)庫(kù)(后面會(huì)簡(jiǎn)單說(shuō)下git clone和git init)*/

圖5
在test里面創(chuàng)建一個(gè)txt文檔,并寫(xiě)入一些東西:

圖6
然后用 git status 查看一下當(dāng)前狀態(tài),我們發(fā)現(xiàn)多了一個(gè)沒(méi)有提交的文件1.txt,并且給出提示用git add將文件添加到暫存區(qū),然后再commit 提交:
git status /*查看狀態(tài)*/

圖7
git add 1.txt /*將文件1.txt添加到暫存區(qū)*/
git commit -m "添加一個(gè)txt文件" /*將暫存區(qū)文件提交到到本地倉(cāng)庫(kù)*/

圖8
查看日志,并回退版本
git log /*查看日志*/

圖9
修改txt,并提交,再查看日志,發(fā)現(xiàn)有兩次提交:
( cat 1.txt ----查看文件1.txt)

圖10
回退版本到添加1.txt
git reset --hard HEAD^ /*回退到上一個(gè)版本*/
git reset --hard HEAD^^ /*回退到上兩個(gè)版本*/
git reset --hard HEAD~100 /*回退到上100個(gè)版本*/
git reset --hard 版本號(hào) /*回退到特定版本*/

圖11

圖12
*重點(diǎn):git 本地倉(cāng)庫(kù)提交到遠(yuǎn)程倉(cāng)庫(kù)
生成ssh秘鑰,秘鑰在c盤(pán)-用戶(hù)-.ssh下面,圖14
ssh-keygen -t rsa -C "你的郵箱"
關(guān)聯(lián)遠(yuǎn)程倉(cāng)庫(kù)
git remote add origin "gitHub上的倉(cāng)庫(kù)名"
推送到遠(yuǎn)程倉(cāng)庫(kù)
git push -u origin master

圖13

圖14
打開(kāi)gitHub設(shè)置settings,把秘鑰添加進(jìn)去

圖15

圖16

圖17

圖18
這樣子,代碼就提交到gitHub上了
git分支的相關(guān)命令
git branch zhangsan /*創(chuàng)建zhangsan這個(gè)分支*/
git checkout zhangsan /*切換到zhangsan這個(gè)分支*/
git branch /*查看是否切換到分支*/
git checkout -b lisi /*創(chuàng)建lisi這個(gè)分支并切換過(guò)去*/
(git checkout -b name 源路徑 ,也可以這樣寫(xiě),name是自己取的名字,方便記憶)
git branch -r /*查看所有分支(這個(gè)是遠(yuǎn)程的分支,如果想用別人創(chuàng)建的分支要先git fetch下來(lái))*/
git merge lisi /*合并lisi這個(gè)分支*/
git branch -d lisi /*刪除lisi這個(gè)分支*/
git其他常用命令
git pull //從遠(yuǎn)程獲取最新版本并merge到本地
git fetch //從遠(yuǎn)程獲取最新版本到本地,不會(huì)自動(dòng)merge。
git rebase //用于把一個(gè)分支的修改合并到當(dāng)前分支。不產(chǎn)生分叉(所以項(xiàng)目最好是使用fetch + rebase)
git stash //把當(dāng)前修改的內(nèi)容保存起來(lái),并退回到?jīng)]有修改前的代碼
git stash pop //把git stash保存下來(lái)的代碼還原
git revert //將某些文件恢復(fù)到未修改前,這個(gè)恢復(fù)后無(wú)法復(fù)原
git push //代碼提交到遠(yuǎn)程倉(cāng)庫(kù)
git init和git clone理解:
git init:用法如上。
git clone : 直接根據(jù)gitHub上的某個(gè)倉(cāng)庫(kù)的url,clone下來(lái)該代碼,用法:
git clone [url]
git命令行用不習(xí)慣的話(huà),可以下載TortoiseGit這個(gè)圖形化界面使用,會(huì)方便一點(diǎn)