有關Git命令的詳細整理和記錄

2021-10-24 02:53:33 字數 3439 閱讀 3021

在多人協作的專案中,常常使用git來進行版本控制。在使用的過程中還是踩了不少的坑,除了日常使用最常見的git pull、git add、git commit和git push外,還有諸多指令只是知道怎麼用,卻沒有系統的整理和深究原理。常常是遇到問題時解決一下,下次再碰到又忘了,不常用的指令每次也需要查手冊。這裡對git的相應命令做乙個整理,主要是以下幾個方面:

git是乙個開源的分布式版本控制系統

工作區:本地電腦上工作的目錄

暫存區(stage/index):一般存放在 .git 目錄下的 index 檔案(.git/index)中

版本庫:工作區有乙個隱藏目錄 .git 就是 git 的版本庫,也稱為本地倉庫

git的工作流程主要是在工作區(workspace)、暫存區(index)、本地倉庫(repository)和遠端倉庫(remote)之間進行操作,依照流程圖了解git命令的具體行為對git指令才能有更深的了解,主要涉及到以下幾條指令:

注意:這裡的本地倉庫與暫存區的概念與上圖的版本庫的概念稍有不同,注意區分

整理了一些git常用的指令

# 顯示當前的git配置

$ git config --list

# 設定郵箱和使用者名稱,加--global表示電腦上所有倉庫,不加表示這個倉庫

$ git config --global user.email "[email protected]"

$ git config --global user.name "my name"

#將當前目錄初始化為乙個版本庫(倉庫)

$ git init

#新建乙個目錄,將其初始化版本庫

$ git init [filename]

# 顯示分支,未跟蹤檔案,更改和其他不同,即當前狀態

$ git status

# 檢視歷史提交記錄

$ git log

$ git log --oneline 簡潔版

# 顯示當前分支的最近幾次提交

$ git reflog

# 顯示暫存區和工作區的差異

$ git

diff

# 比較暫存區和版本庫差異(暫存區和上一次提交(commit)的差異)

$ git

diff --staged

$ git

diff --cached

# 顯示工作區與當前分支最新commit之間的差異(檢視已快取的與未快取的所有改動)

$ git

diff head

# 顯示兩次提交之間的差異

$ git

diff

[first-branch]

...[second-branch]

#將readme.txt從工作區新增到暫存區

$ git add readme.txt

#新增所有檔案

$ git add .

#新建乙個目錄,將其初始化版本庫

$ git commit -m "填寫修改的部分"

#拉取遠端倉庫的**,origin指本地分支,master指遠端分支

$ git pull origin master

#推送**到遠端倉庫,origin指本地分支,master指遠端分支,第一次推送加-u建立兩者聯絡

$ git push -u origin master

#從遠端倉庫轉殖

$ git clone [url]

#退回到上一版本,head^^為上上個版本,以此類推

$ git reset --hard head^

#回退到前100個版本

$ git reset --hard head~100

#回退到特定版本號

$ git reset --hard 版本號

#撤銷readme.txt在工作區的修改

$ git checkout -- readme.txt

#刪除readme.txt這個檔案

$ git

rm readme.txt

# 檢視本地分支

$ git branch (標*為當前分支)

# 檢視遠端分支

$ git branch -r

# 建立新的分支

$ git branch

#建立乙個新的分支dev並切換到該分支上

$ git checkout -b dev

#該指令等同於以下兩條

$ git branch dev #建立分支dev

$ git checkout dev #切換到dev分支

#合併dev分支到當前分支

$ git merge dev

#禁止fast forward模式後合併dev,這樣刪除分支部不會丟掉分支資訊

$ git merge –no-ff -m "注釋" dev

# 刪除分支dev

$ git branch –d dev

# 刪除遠端分支

$ git push origin --delete [branch-name]

$ git branch -dr [remote/branch]

#要檢視遠端庫的資訊 

$ git remote

#要檢視遠端庫的詳細資訊

$ git remote –v

#關聯遠端倉庫,新增遠端倉庫位址

$ git remote add origin url

# 修改遠端倉庫位址

$ git remote set-url origin url

#建立本地dev分支並關聯遠端的origin的dev分支

$ git checkout –b dev origin/dev

#######拉取遠端檔案發生衝突時########

#先將本地修改儲存起來

$ git stash

#檢視本地儲存的資訊

$ git stash list

#暫存之後就可以pull拉取最新**

$ git pull

#還原最後一次暫存的內容同時從堆疊中清除

$ git stash pop

##################################

有關Git命令的總結

本文目錄 全域性配置 使用者名稱 和 郵箱 注 使用 global全域性設定一次,永久生效 git config global user.name yourname git config global user.email youremail 檢查全域性配置資訊 git config list gl...

git命令和基本用法整理

記錄整理一下git的基本用法方便自己日後檢視 命令說明 git init 初始化倉庫 git clone git add 新增檔案到倉庫 git status 檢視倉庫當前的狀態,顯示有變更的檔案 git diff 比較檔案的不同,即暫存區和工作區的差異 git commit 提交暫存區到本地倉庫 ...

Git初探 筆記整理和Git命令詳解

首先先明確幾個概念 workplace 工作區 index 暫存區 repository 本地倉庫 版本庫 remote 遠端倉庫 當在remote 如github 上面clone乙個專案到本地時 假設專案名為gittest 在本地就會看到乙個名為gittest的目錄,目錄下有專案 和乙個名為.gi...