Git常用命令

2021-08-09 13:57:25 字數 3375 閱讀 4057

1.常用命令

//建立git倉庫

git init

git clone //撤回到某個push版本

git reflog

git reset --hard 《日誌的id>

//恢復某次提交的狀態,恢復動作本身也建立次提交物件

git revert <$id>

//恢復最後一次提交的狀態

git revert head

//檢視遠端伺服器位址和倉庫名稱

git remote -v

//移除遠端倉庫

git remote rm origin

2.檢視diff檔案

//比較當前檔案和暫存區檔案差異

git diff

git diff //比較兩次提交之間的差異

git diff //在兩個分支之間比較

git diff

..//對比兩次commit修改的檔案

git diff --stat

//檢視該檔案每次提交記錄

git log git log //檢視每次詳細修改內容的diff

git log -p //檢視最近兩次詳細修改內容的diff

git log -p -2

//檢視每次提交修改的檔案

git log --stat

//檢視某次提交修改的檔案

git show //檢視某次提交某個檔案修改的內容

git show

3.分支管理

//檢視本地分支

git branch

//檢視遠端分支

git branch -r

//建立分支

git branch 《分支名》

//切換分支

git checkout 《分支名》

//上邊兩個語句可以和起來用乙個語句表示

git checkout -b 《分支名》

//本地分支推送到遠端

git push origin 《分支名》

//pull本地不存在的遠端分支

git checkout -b 《本地分支名》 origin/《遠端分支名》

//刪除分支

git branch -d 《分支名》

//如果該分支沒有合併到主分支會報錯,可以用以下命令強制刪除

git branch -d 《分支名》

//刪除遠端分支

git branch origin --delete 《分支名》

//合併兩個分支,例如將開發中的分支(develop),合併到穩定分支(master)。首先切換的master分支:

git checkout master

// 然後執行合併操作

git merge develop

//如果有衝突,會提示你,呼叫git status檢視衝突檔案。解決衝突,然後呼叫git add或git rm將解決後的檔案暫存。所有衝突解決後,git commit 提交更改。

//同理如果主分支**有改動,可將主分支上的**更新到開發分支上

git checkout develop

git merge master

//分支衍合。(分支衍合和分支合併的差別在於,分支衍合不會保留合併的日誌,不留痕跡,而 分支合併則會保留合併的日誌。)

//例如要將開發中的分支(develop),衍合到穩定分支(master)。首先切換的master分支

git checkout master

//然後執行衍和操作

git rebase develop

//如果有衝突,會提示你,呼叫git status檢視衝突檔案。解決衝突,然後呼叫git add或git rm將解決後的檔案暫存。所有衝突解決後,git rebase --continue 提交更改。

4.忽略檔案

在git中如果想忽略掉某個檔案,不讓這個檔案提交到版本庫中,可以使用修改.gitignore檔案的方法。

//進入工程的資料夾下

ls -a

//有乙個.gitignore檔案,編輯它即可

vim .gitignore

需要注意的是.gitignore只能忽略那些原來沒有被新增到版本庫的檔案,如果某些檔案已經被納入了版本管理中,則修改.gitignore是無效的。

這事需要手動設定不要檢查特定檔案的更改情況

//已新增到版本庫 不跟蹤單個檔案(不會刪除版本庫的檔案)

git update-index --assume-unchanged 《檔名》

//如果要還原的話,使用命令

git update-index --no-assume-unchanged 《檔名》

//已新增到版本庫 不跟蹤單個檔案(需要commit 刪除版本庫的檔案)

git rm --cached 《檔名》

git bash進入你的專案目錄,輸入:

git config --global credential.helper store

6.建立ssh:

在終端輸入ssh-keygen -t rsa -b 4096 -c "[email protected]"

建立sshkey

在終端輸入cd ~/.ssh

lsvim id_rsa.pub

將檔案內容拷貝,貼上到github設定選項的ssh and gpg new sshkey

7.檢視git日誌檔案

//包含當前分支的commit資訊

vi .git/logs/refs/heads/master

//包含本地所有的git操作資訊,包括commit沒有push但reset --hard後看不到的提交

vi .git/logs/head

8.git本地已有檔案與git倉庫關聯起來

通過 git init 把這個目錄變成git可以管理的倉庫

git init

把檔案新增到版本庫中

git add .

git commit -m "."

關聯到遠端庫

git remote add origin

獲取遠端庫與本地同步合併(如果遠端庫不為空必須做這一步,否則後面的提交會失敗)

git pull --rebase origin master

執行此命令後會要求輸入使用者名稱、密碼,驗證通過後即開始上傳。

git push -u origin master

常用命令 Git 常用命令大全

安裝教程可參照 廖雪峰老師的安裝教程。git config 在git中,使用git config 命令來配置 git 的配置檔案,git配置級別主要有3類 1 倉庫級別 local 本地 git 倉庫級別配置檔案,作用於當前倉庫。優先順序最高 2 使用者級別 global,全域性配置檔案,作用於所有...

git 常用命令

檢視是否存在檔案需要上傳 git status git add git commit m 建立遠端倉庫 git remote add origin 116.255.146.153 ruby cd work daily project.git 更新git fetch 116.255.146.153 r...

git常用命令

詳細 1,git log p 命令來顯示每一次提交與其父節點提交內容之間快照的差異。2,為了檢視載入 staged 而並未提交 not committed 的內容差異,可以使用 git diff stage 命令 在git 1.6之前的版本中,使用 cached 適應情形 在執行git commit...