git 入門常用命令

2021-09-20 19:12:25 字數 3902 閱讀 2971

git

工作流程:d:\projects\setup2\setup2\setup2\express\singleimage\diskimages\disk1

git clone

工作開始之初,可通過git clone 「url「來實現拷貝遠端git倉庫並建立本地倉庫,再同步工作區**的效果。

git status

工作過程中,可隨時通過git status檢視本地**與git倉庫之間的狀態,比如修改、刪除、增加的檔案狀態。

git add

git commit

若需要將**向本地倉庫遞交,則通過git add將檔案加入索引區,再通過git commit方法可真正的將**遞交入庫。

git push

若功能開發好後,需要將本地**共享給專案組中的其他成員,若通過git push命令將本地已入庫的**向遠端倉庫合入。

git pull

若需要將專案組中其他成員的**成果同步到自身工程,則通過git pull命令可以達到目的

git merge

若需要合入另一分支的**,可通過merge命令實現

git branch

建立、刪除、檢視分支可以通過git branch實現

如建立分支dev,則命令為git branch dev

如檢視本地分支,則直接git branch,前面帶*的則是當前的工作分支

如刪除分支dev,則git branch -d dev,也可以用git branch -d dev進行強刪,內容將丟棄,所以請確定是不要此**才實施

git rebase

重定基,

git reset

比較有用的功能,它可以將已提交的記錄進行還原,通過commit id還原,

git log

檢視每次人員上傳的記錄及commit id值

git diff

可對比分析分支差異、檔案差異、每次簽入的內容的差異

gitk

視覺化檢視log

git mv

對倉庫上的檔案進行重新命名,最後也需要通過git commit才將修改入倉庫

git checkout

可切換分支,如

git checkout dev

若對修改的檔案不滿意,可還原檔案至倉庫中的檔案,命令如下:

git checkout -- 「file「

日常場景使用

1.開發完成後想將**提交到遠端倉庫共享**給專案組成員(多分支工作)

開發前,將遠端倉庫的最新**建立跟蹤分支master(或者叫remote)

再通過master分支建立開發分支並切換到dev進行開發

建立git branch dev命令後再執行git checkout dev,達到切換入dev進行開發

也可直接git checkout -b dev,直接建立並切換

開發過程中,開發人員coding

開發完成後,需要將**入遠端倉庫,則先將**入本地倉庫,

在dev分支上執行git add / git commit之後

執行如下命令:

git checkout master

git pull

達到將跟蹤分支與遠端倉庫同步的效果

再執行git rebase master dev, 此命令是將dev進行變基,

執行此命令的主要原因是此時遠端倉庫上已有其他專案組成員提交了**,而dev分支是在原先的

提交結點上簽出的,執行git pull後,此時master分支上的結點已向前發展,而dev的結點也已向前發展,

通過上述命令後dev的前面簽入結點將與master(即遠端分支上的結點)保持一致。

此時可能會出現衝突,則通過修改**解決衝突**後,使用git add 將衝突檔案提交到索引區,

再git rebase --continue繼續執行rebase過程,成功後工作區將處於dev分支上。

再執行git checkout master

git merge dev

git push

即可將**入庫

2.開發完成後想將**提交到遠端倉庫共享**給專案組成員(單分支工作)

開發前,將遠端倉庫的最新**建立跟蹤分支master(或者叫remote)

直接在master分支上進行修改**

git add

git commit

將**入本地倉庫

需要上傳**時則

git fetch

git rebase origin/master master

此時可能會衝突,則處理方式同1中的衝突過程

雖然第2種方式看上去簡單些,但還是推薦大家採用第1種方式,

它可並行的處理的需求或bug的情況,只需切換分支

(再多建立一些分支,每乙個特性開發或解決每乙個bug時,都可建立新分支進行處理,

建立分支的代價是非常小的,大部分**都是共用的,不像svn,每個分支都是copy,

若原分支還有工作未完成,boss有緊急bug需要你處理時,則通過git stash命令將當前進行到一半的工作進行快取,

切換新分支解決緊急任務後切換回原分支,通過git stash pop可以還原快取的工作,具體stash用法還請採用

git help stash檢視,其它命令也可以通過git help檢視)。

3.每日開發**需要提交入本地倉庫,所以經常使用

git add / git commit即可

若開發二天或三天,發現功能已開發好,想共享給專案組的成員,

此時,可進行git reset操作,將提交記錄向前還原,

比如此時分支上執行 git log 顯示結果如下:

commit 3bc7932bef0f8165e917f75d3302316d8e29bf0c

author: libin jin

date:  tue may 22 20:34:36 2012 +0800

刪除檔案2

commit adbfdf8401b882c9b3e11e4330174c42996bdc57

author: libin jin

date:  tue may 22 20:28:18 2012 +0800

刪除檔案1

commit 3721ce64fa2172d7883fde08a3f219b2edc83b93

author: xiao.zhao

date:  tue may 22 19:13:53 2012 +0800

**文字摺疊取消動畫

我們可以看到,上述最新的二個提交注釋不規則,且二個提交的功能是一致的,

此時,執行下面的命令:

git reset 3721ce64fa2172d7883fde08a3f219b2edc83b93

或 git reset 3721ce64 (8位即可)

再執行git add / git commit 加入合理的注釋,即可將多個提交合成乙個,變成功能完整的一次提交。

這樣就可以在合入遠端倉庫時看到的每個提交都是有明確的含義,可維護性及可讀性上會好很多,

在後繼遇到問題或需求變化時,還原**處理就比較方便,通過git revert可以將整個提交做反向處理,

即可將此功能去除。

git 打標籤:

# 建立附註標籤

$ git tag -a v0.1.2 -m "發布0.1.2版本"

補打標籤

打標籤不必要在head之上,也可在之前的版本上打,這需要你知道某個提交物件的校驗和(通過git log獲取)。

# 補打標籤

$ git tag -a v0.1.1 9fbc3d0

標籤發布

通常的git push不會將標籤物件提交到git伺服器,我們需要進行顯式的操作:

$ git push origin v0.1.2 # 將v0.1.2標籤提交到git伺服器

$ git push origin --tags # 將本地所有標籤一次性提交到git伺服器

git入門 常用命令

alex zhou 這一篇簡單介紹一下git常用命令 1.開始git 1.1 開始乙個新的專案,初始化新的 倉庫 要對現有的某個專案開始用 git 管理,只需到此專案所在的目錄,執行 git init 會在當前目錄下生成乙個.git目錄,包含了所有git需要的資料和資源 1.2 把服務端的專案拷貝到...

git入門常用命令

想要學好git,我們首先要學會一些常用的linux常用命令 ls 目錄名稱 檢視目錄中的內容 子目錄或檔案 cd 目錄名稱 進入某乙個目錄 mkdir 目錄名稱 建立目錄 touch 目錄名稱 建立檔案 cp 原始檔 目標檔案 拷貝檔案 mv 原始檔 目標檔案 移動檔案 rm r 目錄名稱 刪除目錄...

Git常用命令入門

1.12 分支與合併 1.13 刪除分支 1.14 獲取專案最新版本 2.gitlab上傳示例 安裝完git的終端後,在終端下打乙個git,會告訴各種git的使用方法。如果想把當前資料夾用git管理的話,需要先建立乙個倉庫 repository 可以使用乙個已經存在的目錄作為git倉庫或建立乙個空目...