Git簡單應(yīng)用(一)

1、術(shù)語

倉庫(Repository)
一個(gè)倉庫包括了所有的版本信息、所有的分支和標(biāo)記信息。在Git中倉庫的每份拷貝都是完整的。倉庫讓你可以從中取得你的工作副本。
分支(Branches)
一個(gè)分支意味著一個(gè)獨(dú)立的、擁有自己歷史信息的代碼線(code line)。你可以從已有的代碼中生成一個(gè)新的分支,這個(gè)分支與剩余的分支完全獨(dú)立。默認(rèn)的分支往往是叫master。用戶可以選擇一個(gè)分支,選擇一個(gè)分支叫做checkout.
標(biāo)記(Tags)
一個(gè)標(biāo)記指的是某個(gè)分支某個(gè)特定時(shí)間點(diǎn)的狀態(tài)。通過標(biāo)記,可以很方便的切換到標(biāo)記時(shí)的狀態(tài),例如2009年1月25號(hào)在testing分支上的代碼狀態(tài)
提交(Commit)
提交代碼后,倉庫會(huì)創(chuàng)建一個(gè)新的版本。這個(gè)版本可以在后續(xù)被重新獲得。每次提交都包括作者和提交者,作者和提交者可以是不同的人
URL
URL用來標(biāo)識(shí)一個(gè)倉庫的位置
修訂(Revision)
用來表示代碼的一個(gè)版本狀態(tài)。Git通過用SHA1 hash算法表示的id來標(biāo)識(shí)不同的版本。每一個(gè) SHA1 id都是160位長,16進(jìn)制標(biāo)識(shí)的字符串。最新的版本可以通過HEAD來獲取,之前的版本可以通過"HEAD~1"來獲取,以此類推。

2、常用命令

一般來說,日常使用只要記住下圖6個(gè)命令,就可以了。但是熟練使用,恐怕要記住60~100個(gè)命令。


  • Workspace:工作區(qū)
  • Index / Stage:暫存區(qū)
  • Repository:倉庫區(qū)(或本地倉庫)
  • Remote:遠(yuǎn)程倉庫

3、配置

Git的配置文件為.gitconfig,它可以在用戶主目錄下(全局配置),也可以在項(xiàng)目目錄下(項(xiàng)目配置)。

  • 顯示當(dāng)前的Git配置
    $ git config --list
  • 編輯Git配置文件
    git config -e [--global]
  • 設(shè)置提交代碼時(shí)的用戶信息
    git config [--global] user.name "[name]" git config [--global] user.email "[email address]"

4、新建代碼庫

  • 在當(dāng)前目錄新建一個(gè)Git代碼庫
    git init
  • 新建一個(gè)目錄,將其初始化為Git代碼庫
    git init [project-name]

5、增加/刪除文件

  • 添加指定文件到暫存區(qū)
    git add [file1] [file2] ...
  • 添加指定目錄到暫存區(qū),包括子目錄
    git add [dir]
  • 添加當(dāng)前目錄的所有文件到暫存區(qū)
    git add .
  • 添加每個(gè)變化前,都會(huì)要求確認(rèn), 對(duì)于同一個(gè)文件的多處變化,可以實(shí)現(xiàn)分次提交
    git add -p
  • 刪除工作區(qū)文件,并且將這次刪除放入暫存區(qū)
    git rm [file1] [file2] ...
  • 停止追蹤指定文件,但該文件會(huì)保留在工作區(qū)
    git rm --cached [file]
  • 改名文件,并且將這個(gè)改名放入暫存區(qū)
    git mv [file-original] [file-renamed]

5、代碼提交

  • 提交暫存區(qū)到倉庫區(qū)$ git commit -m [message]
  • 提交暫存區(qū)的指定文件到倉庫區(qū)$ git commit [file1] [file2] ... -m [message]
  • 提交工作區(qū)自上次commit之后的變化,直接到倉庫區(qū)$ git commit -a
  • 提交時(shí)顯示所有diff信息$ git commit -v
  • 使用一次新的commit,替代上一次提交,如果代碼沒有任何新變化,則用來改寫上一次commit的提交信息$ git commit --amend -m [message]
  • 重做上一次commit,并包括指定文件的新變化$ git commit --amend [file1] [file2] ...

6、分支

幾乎每一種版本控制系統(tǒng)都以某種形式支持分支。使用分支意味著你可以從開發(fā)主線上分離開來,然后在不影響主線的同時(shí)繼續(xù)工作。在很多版本控制系統(tǒng)中,這是個(gè)昂貴的過程,常常需要?jiǎng)?chuàng)建一個(gè)源代碼目錄的完整副本,對(duì)大型項(xiàng)目來說會(huì)花費(fèi)很長時(shí)間。
有人把 Git 的分支模型稱為“必殺技特性”,而正是因?yàn)樗?,?Git 從版本控制系統(tǒng)家族里區(qū)分出來。Git 有何特別之處呢?Git 的分支可謂是難以置信的輕量級(jí),它的新建操作幾乎可以在瞬間完成,并且在不同分支間切換起來也差不多一樣快。和許多其他版本控制系統(tǒng)不同,Git 鼓勵(lì)在工作流程中頻繁使用分支與合并,哪怕一天之內(nèi)進(jìn)行許多次都沒有關(guān)系。理解分支的概念并熟練運(yùn)用后,你才會(huì)意識(shí)到為什么 Git 是一個(gè)如此強(qiáng)大而獨(dú)特的工具,并從此真正改變你的開發(fā)方式。

  • 創(chuàng)建分支并且切換過去(dev)
    git checkout -b dev
  • 查看所有分支(當(dāng)前分支前面會(huì)標(biāo)一個(gè)*號(hào))
    git branch
  • 切換回master分支
    git checkout master
  • 合并指定分支到當(dāng)前分支
    git merge dev
  • 刪除分支
    git branch -d dev
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 本文為 Git教程的學(xué)習(xí)筆記,教程源自廖雪峰的博客。這是一個(gè)由淺入深,學(xué)完后能立刻上手的Git教程。另,附上另一本...
    七弦桐語閱讀 6,481評(píng)論 5 47
  • Git是目前最流行的版本管理系統(tǒng),也是最先進(jìn)的分布式版本控制系統(tǒng)(distributed version cont...
    pro648閱讀 5,978評(píng)論 1 17
  • 還有誰沒睡。(請(qǐng)?jiān)诘紫禄貜?fù))
    紅酒酒閱讀 268評(píng)論 0 1
  • 看普呂多姆的詩,透過紙面上的文字,似乎就能看到一幅幅色彩鮮亮或灰暗,充滿著痛苦思索的畫面。美麗的姑娘,呆滯的...
    小說熱愛者閱讀 231評(píng)論 0 0

友情鏈接更多精彩內(nèi)容