git命令01

1.瞭解git工具產生的背景知識。
git 是什麼? 目前它是一種分佈式版本控制系統。
那什麼又是版本控制系統? 一種能自動幫助記錄每次文件的改動,不單單是記錄本身對文件的修git

改變化,並且能夠記錄其餘人對同一文件修改的變化。若是想知道某個文件的某次修改哪裏,就ubuntu

直接經過這種軟件來查看。這種軟件就是版本控制系統。
2.安裝git
對於centos :yum install -y git
對於ubuntu/debian: sudo apt-get install gitvim

3. git 工做流程
本地倉庫由git維護的三顆"樹" 組成
(1)第一個是你的工做目錄(working directory),它持有實際文件
(2)第二個是暫存區(Index),它像個緩存區域,臨時保存你的文件修改
(3)第三個是HEAD,直接最後一次提交的結果centos

4. 建立本地庫
(1)第一步
mkdir  learngit  #建立工做目錄緩存

cd leartgit      #進入到工做目錄中
(2)創建倉庫:把工做目錄初始爲一個倉庫。
git init        #Initialized empty Git repository in /root/learngit/.git/
完成後能夠發現,在工做目錄下生成了一個以點開頭的隱藏目錄.git服務器

注意:也不必定必須在空目錄下建立Git倉庫,選擇一個已經有東西的目錄也是能夠的
(3)能夠文件添加到版本庫(也就是能夠在目錄建立文件)
在工做目錄裏建立文件,編寫文件內容。vim filename 文件建立後,能夠命令將文件添加到倉app

庫裏面。
命令一:使用命令git add告訴Git,要將某文件添加至倉庫裏面
git add  filename
命令二:使用命令git commit告訴Git,把文件提交到倉庫:
git commit -m "wrote a readme file"  # -m 後面的""用來講明文件修改說明信息分佈式

能夠使用屢次git add 命令添加文件,而git commit 將一次性提交全部修改的文件工具

小結:初始化一個Git倉庫,使用git init命令。
添加文件到Git倉庫,分兩步:
第一步,使用命令git add <file>,注意,可反覆屢次使用,添加多個文件;
第二步,使用命令git commit,完成。
命令三:git status命令可讓咱們時刻掌握倉庫當前的狀態。文件是否被修改或者文件被修改學習

可是沒有被提交。

命令四:git diff filename
找出文件先後修改先後對比的內容

(4)版本回退
當文件內容屢次被修改後,而且進行git add 和 git commit -m "" ,這會出現文件的多個版本
那麼如何查文件的歷史版本和當前版本呢?
命令五:git log
git log命令顯示從最近到最遠的提交日誌,能夠看文件被修改提交了幾回
git log  --pretty=oneline #每一個歷史版本按一行輸出
$ git log --pretty=oneline
3628164fb26d48395383f8f31179f24e0882e1e0 append GPL
ea34578d5496d7dd233c827ed32a8cd576c5ee85 add distributed
cb926e7ea50ad11b8f9e909c05226233bf755030 wrote a readme file
其中前面很長的字符是commit_id(版本號,一旦提交都有與之對應的版本號)
若是想要從當前的文件版本回退到歷史的某個版本,該有什麼命令?
在Git中,用HEAD表示當前版本,也就是最新的提交
上一個版本就是HEAD^,
上上一個版本就是HEAD^^,
前N個版本表示:HEAD~N。
命令五來了:git reset --hard
git reset --hard^ HEAD(某個版本) #復位到最近的前一個版本。固然能夠
git reset --hard "commit_id"

小結:
HEAD指向的版本就是當前版本,所以,Git容許咱們在版本的歷史之間穿梭,使用命令git reset

--hard commit_id。
穿梭前,用git log能夠查看提交歷史,以便肯定要回退到哪一個版本。
要重返將來,用git reflog查看命令歷史,以便肯定要回到將來的哪一個版本

明天:學習遠程倉庫怎麼添加遠程庫與怎麼從遠程庫克隆。還有什麼是分支管理、標籤管理,最後是搭建git服務器。

相關文章
相關標籤/搜索