Git基礎與常用命令

2021-10-05 16:44:35 字數 3606 閱讀 1562

通過git config命令配置。–global選項指定讀寫的配置檔案路徑為~/.gitconfig,只針對當前使用者。

git config --global user.name  "user"

#設定使用者名稱

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

#設定郵箱

git config --global core.editor emacs #設定預設文字編譯器為emacs

git config --list #檢查所有git配置

git config

#檢查git某一項配置,如user.name

忽略檔案 —— .gitignore
git init        		#將當前目錄初始化為git倉

git clone [url]

#轉殖現有倉庫

跟蹤檔案
git add 

#跟蹤某個新檔案,將內容從工作目錄新增到暫存區

git add .

#跟蹤所有新檔案

移除檔案
git

rm#從git中移除檔案,並連帶從工作目錄中刪除指定檔案

gitrm -f #如刪除之前有修改並已放到暫存區,必須指定-f選項,防止誤刪還沒有新增到快照的資料不能被git恢復

gitrm --cached #把檔案從git暫存區刪除,但在工作目錄保留該檔案

gitmv

#移動檔案,相當於執行以下三條命令

#mv file1 file2, git rm file1, git add file2

提交更新
git commit       		#提交更新
檢視當前檔案狀態
git status       		#檢查當前檔案狀態
檢視提交歷史
git log --pretty=oneline #將每個提交放在一行顯示

git log -p -2 #-p用來顯示每次提交的內容差異, -2表示顯示最近兩次提交

git log --stat #檢視每次提交的簡略資訊

git reflog #顯示最近的提交記錄

檢視修改和差異
git

diff

#比較工作目錄中當前檔案和暫存區快照之間差異,即修改後未暫存的變化

gitdiff --cached [file]

#檢視暫存區與上乙個commit的差異

gitdiff --staged [file]

#等同於--cached

gitdiff head #顯示工作區與當前分支最新commit的差異

gitdiff

[commitid1]

[commitid2]

#比較兩次提交記錄的差異,比如head和head~1

檢視分支
git branch								 #列出所有本地分支

git branch -a #列出所有本地分支和遠端分支

新建分支
git branch [branch_name]

#建立新分支,但仍然停留在當前分支

git branch [branch_name]

[commitid]

#建立新分支,並指向指定commit

git checkout -b [branch_name]

[tag_name]

#在特定標籤上建立乙個分支

切換分支
git checkout [branch_name]

#切換分支

git checkout -b [branch_name]

#建立並切換分支

刪除分支
git branch -d [branch_name]

#刪除分支

git branch -d [branch_name]

#強制刪除分支

合併分支
git merge  [branch]

#將branch分支內容合併到當前分支

git rebase [branch]

#將branch分支內容變基到當前分支

git rebase [branch1]

[branch2]

#將branch2分支變基到目標分支branch1,省去切換分支的步驟

merge和rebase的區別

注:只對從未推送至公共倉庫的提交執行變基命令,只把變基命令用作推送前清理提交使之整潔的工具。

撤銷操作

git reset head 

#取消暫存的檔案

git checkout --

#撤銷檔案修改,將檔案還原成上次提交的狀態

git reset --hard

#回退到具體版本號

清理工作目錄
git clean -df 				# 移除工作目錄中沒有忽略的未追蹤檔案及空的子目錄, -d表示刪除,-f表示強制

git clean -dn # -n檢視將會刪除哪些檔案,不會真正刪除

git clean -xdf # 指定-x額外移除已忽略的未追蹤檔案

重寫歷史
git commit --amend  		#修改最後一次提交

git rebase -i [commitid]

#修改多個歷史提交

遠端倉庫
git remote -v 					 #檢視遠端倉庫

git remote add

#新增新的遠端git倉庫

git remote rm

#移除遠端倉庫

抓取、推送
git fetch [remote]

#拉取遠端倉庫資料到本地,但不會自動合併

git pull [remote]

[branch]

#相當於git fetch和git merge命令的組合

git push [remote]

[branch]

#推送本地分支到遠端, -f強制推送

git push [remote] –-delete [branch]

#刪除遠端分支

通過git config為git命令建立別名後,無需每次輸入完整的git命令,簡化了操作

git config --global alias.co checkout

git config --global alias.br branch

git config --global alias.ci commit

git config --global alias.st status

git config --global alias.unstage 'reset head --'

git config --global alias.last 'log -1 head'

《pro git》第2版:

Git基礎 Git常用命令

檢視 新增 提交 刪除 找回,重置修改檔案 git help 顯示command的help git show 顯示某次提交的內容 git show id git co 拋棄工作區修改 git co 拋棄工作區修改 git add 將工作檔案修改提交到本地暫存區 git add 將所有修改過的工作檔案...

git常用命令(基礎)

git init 初始化倉庫,就是把當前資料夾搞成是git倉庫 成功的話,資料夾中會多這樣乙個檔案 git add 跟蹤指定檔案或者資料夾 git commit 提交 git commit m 你好,我是具體修改了 的描述資訊 git commit後面跟的m是用來新增修改的描述資訊用的 git cl...

Git基礎及常用命令

git 開源的分布式版本控制系統。程式設計師必備。linux下git的安裝與配置 安裝 ubuntu下可以執行以下命令安裝 sudo apt install git,安裝成功後可檢視git版本 git version。git配置 git 提供了乙個叫做 git config 的工具,專門用來配置或讀...