- 相關(guān)推薦
Ubuntu系統(tǒng)中Git客戶(hù)端的安裝及使用教程
安裝git
sudo apt-get install git
git config命令的--global參數(shù),用了這個(gè)參數(shù),表示你這臺(tái)機(jī)器上所有的Git倉(cāng)庫(kù)都會(huì)使用這個(gè)配置,當(dāng)然也可以對(duì)某個(gè)倉(cāng)庫(kù)指定不同的用戶(hù)名和Email地址
git config --global user.name "Your name"
git config --global user.email "email@XX.com"
創(chuàng)建版本庫(kù)repository
首先找一個(gè)地方,創(chuàng)建一個(gè)空目錄,然后使用git init 命令
git init
將文件放到建好的倉(cāng)庫(kù)目錄下使用如下命令
用add將文件添加到倉(cāng)庫(kù)
git add filename
用commit告訴git, 把文件提交到倉(cāng)庫(kù)
git commit -m "input something "
git commit命令執(zhí)行成功后會(huì)告訴你,文件被改動(dòng)的情況。commit可以一次提交很多文件
查看倉(cāng)庫(kù)歷史
git status命令可以讓我們時(shí)刻掌握倉(cāng)庫(kù)當(dāng)前的狀態(tài)
git status
git diff filename 可以查看該文件時(shí)如何被修改的
版本回退
用git log 命令查看歷史記錄
git reset --hard +版本號(hào)
其中**HEAD表示當(dāng)前版本,HEAD^表示上一個(gè)版本,HEAD^^表示上上一個(gè)版本 也可寫(xiě)成HEAD~100上一百個(gè)版本。版本號(hào)不用全寫(xiě),寫(xiě)前幾位就行。git會(huì)自動(dòng)幫你找到
用git reflog 可以查看你每一次的操作記錄
撤銷(xiāo)修改
使用
git checkout --xxx.txt
命令git checkout -- readme.txt意思就是,把readme.txt文件在工作區(qū)的修改全部撤銷(xiāo),這里有兩種情況:
一種是readme.txt自修改后還沒(méi)有被放到暫存區(qū),現(xiàn)在,撤銷(xiāo)修改就回到和版本庫(kù)一模一樣的狀態(tài);
一種是readme.txt已經(jīng)添加到暫存區(qū)后,又作了修改,現(xiàn)在,撤銷(xiāo)修改就回到添加到暫存區(qū)后的狀態(tài)。
總之,就是讓這個(gè)文件回到最近一次git commit或git add時(shí)的狀態(tài)
使用git reset HEAD +filename可以把暫存區(qū)的修改撤銷(xiāo)掉,重新放回工作區(qū)。git reset命令既可以回退版本,也可以把暫存區(qū)的修改撤銷(xiāo)掉
刪除文件
** 使用git rm filename**刪除文件
若刪錯(cuò)了,可用 git checkout -- filename進(jìn)行恢復(fù)
查看、切換、創(chuàng)建和刪除分支
git br -r # 查看遠(yuǎn)程分支
git br# 創(chuàng)建新的分支
git br -v # 查看各個(gè)分支最后提交信息
git br --merged # 查看已經(jīng)被合并到當(dāng)前分支的分支
git br --no-merged # 查看尚未被合并到當(dāng)前分支的分支
git co# 切換到某個(gè)分支
git co -b# 創(chuàng)建新的分支,并且切換過(guò)去
git co -b# 基于branch創(chuàng)建新的new_branch
git co $id # 把某次歷史提交記錄checkout出來(lái),但無(wú)分支信息,切換到其他分支會(huì)自動(dòng)刪除
git co $id -b# 把某次歷史提交記錄checkout出來(lái),創(chuàng)建成一個(gè)分支
git br -d# 刪除某個(gè)分支
git br -D# 強(qiáng)制刪除某個(gè)分支 (未被合并的分支被刪除的時(shí)候需要強(qiáng)制)
分支合并和rebase
git merge# 將branch分支合并到當(dāng)前分支
git merge origin/master --no-ff # 不要Fast-Foward合并,這樣可以生成merge提交
git rebase master# 將master rebase到branch,相當(dāng)于:
git co&& git rebase master && git co master && git merge
Git暫存管理
git stash # 暫存
git stash list # 列所有stash
git stash apply # 恢復(fù)暫存的內(nèi)容
git stash drop # 刪除暫存區(qū)
遠(yuǎn)程倉(cāng)庫(kù)
創(chuàng)建SSH key
ssh-keygen -t rsa -C "email@xx.com"
如果一切順利的話(huà),可以在用戶(hù)主目錄里找到.ssh目錄,里面有id_rsa和id_rsa.pub兩個(gè)文件,這兩個(gè)就是SSH Key的秘鑰對(duì),id_rsa是私鑰,不能泄露出去,id_rsa.pub是公鑰,可以放心地告訴任何人
登陸GitHub,打開(kāi)“Account settings”,“SSH Keys”頁(yè)面:
然后,點(diǎn)“Add SSH Key”,填上任意Title,在Key文本框里粘貼id_rsa.pub文件的內(nèi)容
將本地倉(cāng)庫(kù)推送到GitHub倉(cāng)庫(kù)
git remote add origin git@github.com:pastqing/wangdao.git
git push -u origin mastercd
由于遠(yuǎn)程庫(kù)是空的,我們第一次推送master分支時(shí),加上了-u參數(shù),Git不但會(huì)把本地的master分支內(nèi)容推送的遠(yuǎn)程新的master分支,還會(huì)把本地的master分支和遠(yuǎn)程的master分支關(guān)聯(lián)起來(lái),在以后的推送或者拉取時(shí)就可以簡(jiǎn)化命令
此后,每次本地提交后,只要有必要,就可以使用命令git push origin master推送最新修改
從遠(yuǎn)程倉(cāng)庫(kù)克隆
git clone git@github.com:pastqing/wangdao.git
查看提交記錄
git log
git log# 查看該文件每次提交記錄
git log -p# 查看每次詳細(xì)修改內(nèi)容的diff
git log -p -2 # 查看最近兩次詳細(xì)修改內(nèi)容的diff
git log --stat #查看提交統(tǒng)計(jì)信息
【Ubuntu系統(tǒng)中Git客戶(hù)端的安裝及使用教程】相關(guān)文章:
在Ubuntu系統(tǒng)中編譯安裝Vim的教程06-28
WinNTsetup安裝windows8系統(tǒng)圖文使用教程06-28
網(wǎng)店系統(tǒng)安裝教程06-29
電腦的系統(tǒng)安裝教程06-29
如何使用u盤(pán)安裝win10系統(tǒng)教程06-28
關(guān)于如何把WinPE系統(tǒng)安裝到U盤(pán)上使用教程06-28
ghost版系統(tǒng)安裝教程06-29
系統(tǒng)安裝教程的圖文解釋06-29