Ubuntu系統(tǒng)中Git客戶端的安裝與基本命令使用教程
伯樂在線 發(fā)布時間:2016-05-20 11:07:54 作者:robbin
我要評論

Git是當下最流行的版本控制系統(tǒng),本文將為大家整理Ubuntu系統(tǒng)中Git客戶端的安裝與基本命令使用教程,需要的朋友可以參考下
安裝git
復制代碼
代碼如下:sudo apt-get install git
git config命令的--global參數(shù),用了這個參數(shù),表示你這臺機器上所有的Git倉庫都會使用這個配置,當然也可以對某個倉庫指定不同的用戶名和Email地址
復制代碼
代碼如下:git config --global user.name "Your name"
git config --global user.email "email@XX.com"
創(chuàng)建版本庫repository
首先找一個地方,創(chuàng)建一個空目錄,然后使用git init 命令
復制代碼
代碼如下:git init
將文件放到建好的倉庫目錄下使用如下命令
用add將文件添加到倉庫
復制代碼
代碼如下:git add filename
用commit告訴git, 把文件提交到倉庫
復制代碼
代碼如下:git commit -m "input something "
git commit命令執(zhí)行成功后會告訴你,文件被改動的情況。commit可以一次提交很多文件
查看倉庫歷史
git status命令可以讓我們時刻掌握倉庫當前的狀態(tài)
復制代碼
代碼如下:git status
git diff filename 可以查看該文件時如何被修改的
版本回退
用git log 命令查看歷史記錄
復制代碼
代碼如下:git reset --hard +版本號
其中**HEAD表示當前版本,HEAD^表示上一個版本,HEAD^^表示上上一個版本 也可寫成HEAD~100上一百個版本。版本號不用全寫,寫前幾位就行。git會自動幫你找到
用git reflog 可以查看你每一次的操作記錄
撤銷修改
使用
復制代碼
代碼如下:git checkout --xxx.txt
命令git checkout -- readme.txt意思就是,把readme.txt文件在工作區(qū)的修改全部撤銷,這里有兩種情況:
一種是readme.txt自修改后還沒有被放到暫存區(qū),現(xiàn)在,撤銷修改就回到和版本庫一模一樣的狀態(tài);
一種是readme.txt已經(jīng)添加到暫存區(qū)后,又作了修改,現(xiàn)在,撤銷修改就回到添加到暫存區(qū)后的狀態(tài)。
總之,就是讓這個文件回到最近一次git commit或git add時的狀態(tài)
使用git reset HEAD +filename可以把暫存區(qū)的修改撤銷掉,重新放回工作區(qū)。git reset命令既可以回退版本,也可以把暫存區(qū)的修改撤銷掉
刪除文件
** 使用git rm filename**刪除文件
若刪錯了,可用 git checkout -- filename進行恢復
查看、切換、創(chuàng)建和刪除分支
復制代碼
代碼如下:git br -r # 查看遠程分支
git br <new_branch> # 創(chuàng)建新的分支
git br -v # 查看各個分支最后提交信息
git br --merged # 查看已經(jīng)被合并到當前分支的分支
git br --no-merged # 查看尚未被合并到當前分支的分支
git co <branch> # 切換到某個分支
git co -b <new_branch> # 創(chuàng)建新的分支,并且切換過去
git co -b <new_branch> <branch> # 基于branch創(chuàng)建新的new_branch
git co $id # 把某次歷史提交記錄checkout出來,但無分支信息,切換到其他分支會自動刪除
git co $id -b <new_branch> # 把某次歷史提交記錄checkout出來,創(chuàng)建成一個分支
git br -d <branch> # 刪除某個分支
git br -D <branch> # 強制刪除某個分支 (未被合并的分支被刪除的時候需要強制)
分支合并和rebase
復制代碼
代碼如下:git merge <branch> # 將branch分支合并到當前分支
git merge origin/master --no-ff # 不要Fast-Foward合并,這樣可以生成merge提交
git rebase master <branch> # 將master rebase到branch,相當于:
git co <branch> && git rebase master && git co master && git merge <branch>
Git暫存管理
復制代碼
代碼如下:git stash # 暫存
git stash list # 列所有stash
git stash apply # 恢復暫存的內容
git stash drop # 刪除暫存區(qū)
遠程倉庫
創(chuàng)建SSH key
復制代碼
代碼如下:ssh-keygen -t rsa -C "email@xx.com"
如果一切順利的話,可以在用戶主目錄里找到.ssh目錄,里面有id_rsa和id_rsa.pub兩個文件,這兩個就是SSH Key的秘鑰對,id_rsa是私鑰,不能泄露出去,id_rsa.pub是公鑰,可以放心地告訴任何人
登陸GitHub,打開“Account settings”,“SSH Keys”頁面:
然后,點“Add SSH Key”,填上任意Title,在Key文本框里粘貼id_rsa.pub文件的內容
將本地倉庫推送到GitHub倉庫
復制代碼
代碼如下:git remote add origin git@github.com:pastqing/wangdao.git
git push -u origin mastercd
由于遠程庫是空的,我們第一次推送master分支時,加上了-u參數(shù),Git不但會把本地的master分支內容推送的遠程新的master分支,還會把本地的master分支和遠程的master分支關聯(lián)起來,在以后的推送或者拉取時就可以簡化命令
此后,每次本地提交后,只要有必要,就可以使用命令git push origin master推送最新修改
從遠程倉庫克隆
復制代碼
代碼如下:git clone git@github.com:pastqing/wangdao.git
查看提交記錄
復制代碼
代碼如下:git log
git log <file> # 查看該文件每次提交記錄
git log -p <file> # 查看每次詳細修改內容的diff
git log -p -2 # 查看最近兩次詳細修改內容的diff
git log --stat #查看提交統(tǒng)計信息
相關文章
- 這篇文章主要介紹了Linux操作Git遠程倉庫與本地倉庫同步的教程,本文以當下最熱門的GitHub上的項目同步為例進行講解,需要的朋友可以參考下2016-05-05
- 這篇文章主要介紹了CentOS系統(tǒng)中GitLab客戶端的安裝教程,要安裝Ruby環(huán)境作為依賴,同時以MySQL為例講解了數(shù)據(jù)庫的協(xié)同,需要的朋友可以參考下2016-04-26
CentOS系統(tǒng)上搭建Git版本控制服務器的教程
這篇文章主要介紹了CentOS系統(tǒng)上搭建Git版本控制服務器的教程,包括創(chuàng)建SSH key以及打開RSA認證等遠程連接的相關配置方法講解,需要的朋友可以參考下2016-04-26- 這篇文章主要介紹了CentOS中Git客戶端的安裝和基礎配置教程,這里的配置簡單講解了生成公鑰和克隆倉庫的方法,需要的朋友可以參考下2016-04-26
Linux系統(tǒng)中ps命令和gitps命令的使用教程
這篇文章主要介紹了Linux系統(tǒng)中ps命令和gitps命令的使用教程,兩個命令都被用來查看系統(tǒng)中所運行的進程狀況,需要的朋友可以參考下2016-03-03Android studio怎么使用git獲取最新內容然后合并?
Android studio怎么使用git獲取最新內容然后合并?在Android studio中進行導入的項目與github中導入的項目是一致的,就需要進行合并分之的,下面分享詳細的解決辦法2016-03-01在Ubuntu系統(tǒng)中使用Git客戶端來操作GitHub代碼
這篇文章主要介紹了在Ubuntu系統(tǒng)中使用Git客戶端來操作GitHub代碼的方法,文中總結了一些常用的Git代碼版本操作命令,歡迎收藏查閱,需要的朋友可以參考下2016-02-22- 這篇文章主要介紹了SAE上應用的Git代碼倉庫管理基本操作講解,由于Github的絕對人氣,Git版本控制方式已然是當下的主流,需要的朋友可以參考下2016-02-16
- 這篇文章主要介紹了使用Git或SVN方式上傳代碼文件到SAE的教程,SVN在Windows下的客戶端操作較為平易近人,但當下Git形式的代碼管理儼然是大勢所趨,需要的朋友可以參考下2016-02-15
- 這篇文章主要介紹了使用SAE和GitCafe搭建網(wǎng)站的過程講解,GitCafe可以設置自動將代碼推送到新浪云上,這樣開源合作時修改代碼便可以更加方便,需要的朋友可以參考下2016-02-14