從0開始學Github(二)之Git的常用指令

Git的常用命令

首先在命令行裏面輸入git,會出現下面的提示表示git安裝成功了
這裏寫圖片描述
首先在E盤下的MyGit文件夾下面新建一個test,然後cd到這個test文件夾下面。

git init

當前的test文件夾下面不是一個Git倉庫,調用這個命令來初始化爲git倉庫。
這裏寫圖片描述

git status

這個命令是用來查看狀態的,沒事可以調用試試查看當前的狀態。
這裏寫圖片描述

git add

現在在test文件夾下面創建一個xx.txt文件,先調用git status命令看看它當前的狀態
這裏寫圖片描述
可以看到這個xx.txt文件提示還沒有提交到倉庫中沒有被追蹤,使用add命令提交,現在調用git add xx.txt再調用git status看狀態
這裏寫圖片描述
這是表示這個xx.txt等待被提交,也可以使用git rm命令移除這個緩存。
git add . 可以add改路徑下的所有文件

git commit

接着繼續提交,輸入git commit -m “test commit”,-m後面跟的是這次提交的說明信息,這時再輸入git status命令可以看到已經沒有需要提交的信息了。其實之前的add命令是把提交到一個緩衝區,調用commit纔是真正的提交。
這裏寫圖片描述

git log

可以看我們commit的記錄。
這裏寫圖片描述
在commit後面跟了一串字符,這個是代表這次提交的ID,還有一些提交日期和提交人的信息,當然如果不需要這些信息,可以在命令後面加上“–pretty=online”

git reset

版本回退,現在我們回退到第一次操作時,利用git log找到第一次提交的ID,執行下面操作
這裏寫圖片描述
再次執行git log操作可以看到只有一條commit記錄了,再打開xx.txt看也回到了最初的狀態。
圖片reset2
那麼現在還能不能回到回退之前的版本呢,當然是可以的,還是調用相同的指令,傳入不同的ID就可以了。如果這時你找不到之前的id,可以調用git reflog指令來查看。

git reflog

HEAD前面就是ID,用這個ID再次回到之前的版本就可以了。
這裏寫圖片描述

現在修改一下xx.txt裏面的內容,調用git status看看

這裏寫圖片描述
可以看到這個文件是被修改但是沒有提交,使用add和commit進行提交,也可以是使用git checkout來捨棄這次修改。

git checkout – < file >

剛纔看到了修改後提示可以調用這個命令去捨棄修改,現在試試看,先修改一哈xx.txt文件,再調用。
這裏寫圖片描述
這時再去看看xx.txt文件,你會發現它的修改被撤銷了,回到了沒有修改前的狀態。

git rm < file >

這個命令用來刪除文件

git rm -r –cached 某個目錄

刪除某個目錄下的add後的緩存,並不會刪除物理文件

git rm -r –f “文件路徑”

直接刪除某個目錄下的物理文件

git branch

branch也就是分支,在團隊合作的時候很重要,我們在執行了git init指令後,倉庫會自動生成一個主分支master,之前的操作我們都是在master分支上面執行的,應該儘量不要直接在主分支上面進行操作,又比如兩個人操作同一個項目的不同模塊,顯然這樣是不可能都去操作主分支的,不然會產生影響。所以這時就需要兩個人各自建立一個分支,分別在各自的分支上面操作,當完成測試後再進行合併到主分支上面。
這裏寫圖片描述
這個命令是查看當前分支的狀況。

那麼如何去新建一個分支呢,直接在git branch 後面加上新建分支的名字就好了,如下所示:
這裏寫圖片描述
這裏新增了一條叫x的分支,然後再次調用git branch可以看到已經多出一條x的分支。可以看到master分支前面有個*號,並且是綠色的,這代表是當前操作所在的分支。

git checkout

切換分支,默認都是在master分支下面的,新建分支後我們還需要切換到這個分支下面,如下所示可以看到已經切換到x分支下面了
這裏寫圖片描述

git checkout -b

新建一個分支,並且切換到這個分支,一步到處,如下所示
這裏寫圖片描述

git merge

當分工合作的兩個同學完成並測試後,就需要把各自的模塊同步到主分支master上面來,git merge 就是合併分支用到的命令,針對這個情況,需要先做兩步,第一步是切換到 master 分支,如果你已經在了就不用切換了,第二步執行 git merge a ,意思就是把a分支的代碼合併過來,不出意外,這個時候a分支的代碼就順利合併到 master 分支來了。

git branch -d

刪除分支,當這個分支錯誤或者已經合併到主分支不需要了,那麼調用這個指令去刪除。
這裏寫圖片描述

git branch -D

有些時候可能會刪除失敗,比如如果a分支的代碼還沒有合併到master,你執行 git branch -d a 是刪除不了的,它會智能的提示你a分支還有未合併的代碼,但是如果你非要刪除,那就執行 git branch -D a 就可以強制刪除a分支。

以上都是在本地環境下操作的,並沒有涉及到遠程倉庫。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章