在你經常使用的命令當中有一個git branch –a 用來查看所有的分支,包括本地和遠程的。但是時間長了你會發現有些分支在遠程其實早就被刪除了,但是在你本地依然可以看見這些被刪除的分支。
同步遠程分支的兩種方式:
一、通過命令,git remote show origin 來查看有關於origin的一些信息,包括分支是否tracking。可以通過git remote prune 移除這個分支。(也就是說你可以刷新本地倉庫與遠程倉庫的保持這些改動的同步)

使用命令
git remote show origin
,可以查看remote地址,遠程分支,還有本地分支與之相對應關系等信息。

可以看到那些遠程倉庫已經不存在的分支,根據提示,使用 git remote prune origin
命令:
這樣就刪除了那些遠程倉庫不存在的分支。
二、如果遠程主機刪除了某個分支,默認情況下,git pull
不會在拉取遠程分支的時候,刪除對應的本地分支。這是為了防止,由於其他人操作了遠程主機,導致git pull
不知不覺刪除了本地分支。但是,你可以改變這個行為,加上參數 -p
就會在本地刪除遠程已經刪除的分支。
$ git pull -p # 等同於下面的命令 $ git fetch --prune origin $ git fetch -p
一、保證git良好的性能
在大的倉庫中, git靠壓縮歷史信息來節約磁盤和內存空間。壓縮操作並不是自動進行的, 你需要手動執行:
$ git gc
壓縮操作比較耗時, 你運行git gc命令最好是在你沒有其它工作的時候.
二、保持git的可靠性
$ git fsck
運行一些倉庫的一致性檢查, 如果有任何問題就會報告. 這項操作也有點耗時, 通常報的警告就是“懸空對象"(dangling objects).