GIT 版本控制命令學習

2021-06-16 15:53:21 字數 2453 閱讀 5713

1.$ git init

要對現有的某個專案開始用 git 管理,只需到此專案所在的目錄,執行:

2.$ git status

檢查當前檔案狀態

3.git add命令

功能1:可以用它開始跟蹤新檔案

功能2:或者把已跟蹤的檔案放到暫存區

功能3:還能用於合併時

把有衝突的檔案標記為已解決狀態等

4.$ cat .gitignore

(檔案內定義規則)

忽略某些檔案

我們再看乙個 .gitignore 檔案的例子:

# 此為注釋 – 將被 git 忽略

*.a # 忽略所有 .a 結尾的檔案

!lib.a # 但 lib.a 除外

/todo # 僅僅忽略專案根目錄下的 todo 檔案,不包括 subdir/todo

build/ # 忽略 build/ 目錄下的所有檔案

doc/*.txt # 會忽略 doc/notes.txt 但不包括 doc/server/arch.txt

5.git diff檢視當前工作目錄和暫存區域的檔案差異

git diff --cached檢視當前暫存區域和上一次提交的檔案差異

6.git commit提交暫存區域檔案到版本庫

git commit -a跳過暫存區域,直接將以跟蹤的檔案變化提交

7.git rm移除版本庫中的跟蹤列表,同時刪除目錄檔案

git rm -f強制刪除,功能同上

git rm --cached在跟蹤列表中刪除檔案,目錄中保留

$git rm log/\*.log
注意到星號*之前的反斜槓 \,因為 git 有它自己的檔案模式擴充套件匹配方式,所以我們不用 shell 來幫

忙展開(譯註:實際上不加反斜槓也可以執行,只不過按照 shell 擴充套件的話,僅僅刪除指定目錄下的檔案而不會遞迴匹配。上面的例子本來就指定了目錄,所以效果等同,但下面的例子就會用遞迴方式匹配,所以必須加反斜槓。)。此命令刪除所有log/目錄下擴充套件名為.log的檔案

8.$ git mv file_from file_to它會恰如預期般正常工作。實際上,即便此時檢視狀態資訊,也會明白無誤地看到關於重新命名操作的說明:

$ git mv readme.txt readme

$ git status

# on branch master

# your branch is ahead of 'origin/master' by 1 commit.

## changes to be committed:

#(use "git reset head ..." to unstage)##

renamed:

readme.txt -> readme

#

其實,執行

git mv

就相當於執行了下面三條命令:

$ mv readme.txt readme

$ git rm readme.txt

$ git add readme

9.git log檢視記錄

git log -p -2檢視最近2次的記錄(-p 展開內容差異 -2 兩次更新)

git log --stat顯示統計資料

Git版本控制命令

git config global user.name dage git config global user.email cici gmail.com 可以通過去掉後面的使用者名稱和郵箱檢視是否設定成功 在當前工程的目錄下 git init當前目錄下出現.git 資料夾,如果想刪除本地倉庫可以直接...

Git 版本控制命令

本文只是乙個學習的記錄,後期會不定期的更新 git config global user.name chris zhang git config global user.email chriszhang email.com git inittouch filenamegit status 及 git...

git 版本常用控制命令

1.git checkout b iss53 等價與兩條命令 git branch iss53 先建立分支 git checkout iss53 2.git commit a m 修改的說明 等價於兩條命令 git add git commit m 修改的說明 3.git branch 顯示有哪些分...