## 保證良好的性能
在大的倉庫中, git靠壓縮歷史信息來節約磁盤和內存空間。
壓縮操作并不是自動進行的, 你需要手動執行?[git gc](http://www.kernel.org/pub/software/scm/git/docs/git-gc.html):
~~~
$ git gc
~~~
壓縮操作比較耗時, 你運行[git gc](http://www.kernel.org/pub/software/scm/git/docs/git-gc.html)命令最好是在你沒有其它工作的時候。
## 保持可靠性
[git fsck](http://www.kernel.org/pub/software/scm/git/docs/git-fsck.html)?運行一些倉庫的一致性檢查, 如果有任何問題就會報告. 這項操作也有點耗時, 通常報的警告就是“懸空對象"(dangling objects)。
~~~
$ git fsck
dangling commit 7281251ddd2a61e38657c827739c57015671a6b3
dangling commit 2706a059f258c6b245f298dc4ff2ccd30ec21a63
dangling commit 13472b7c4b80851a1bc551779171dcb03655e9b5
dangling blob 218761f9d90712d37a9c5e36f406f92202db07eb
dangling commit bf093535a34a4d35731aa2bd90fe6b176302f14f
dangling commit 8e4bec7f2ddaa268bef999853c25755452100f8e
dangling tree d50bb86186bf27b681d25af89d3b5b68382e4085
dangling tree b24c2473f1fd3d91352a624795be026d64c8841f
...
~~~
“懸空對象"(dangling objects)并不是問題, 最壞的情況只是它們多占了一些磁盤空間. 有時候它們是找回丟失的工作的最后一絲希望。
- 1. 介紹
- 歡迎使用Git
- GIT對象模型
- Git目錄 與 工作目錄
- Git索引
- 2. 第一步
- 安裝Git
- 安裝與初始化
- 3. 基本用法
- 獲得一個Git倉庫
- 正常的工作流程
- 分支與合并@基礎
- 查看歷史 -Git日志
- 比較提交 - Git Diff
- 分布式的工作流程
- Git標簽
- 4. 中級技能
- 忽略某些文件
- rebase
- 交互式rebase
- 交互式添加
- 儲藏
- Git樹名
- 追蹤分支
- 使用Git Grep進行搜索
- Git的撤消操作 - 重置, 簽出 和 撤消
- 維護Git
- 建立一個公共倉庫
- 建立一個私有倉庫
- 5. 高級技能
- 創建新的空分支
- 修改你的歷史
- 高級分支與合并
- 查找問題的利器 - Git Bisect
- 查找問題的利器 - Git Blame
- Git和Email
- 定制Git
- Git Hooks
- 找回丟失的對象
- 子模塊
- 6. Git生態體系
- Git 與之 Windows
- 使用Git進行系統部署
- 與 Subversion 集成
- 從其他代碼管理工具遷移到Git
- 圖形化的Git
- Git倉庫托管
- Git的其它用法
- Git的腳本支持
- Git 與編輯器
- 7. 原理解析
- Git是如何存儲對象的
- 查看Git對象
- Git引用
- Git索引
- 打包文件
- 更底層的Git
- 傳輸協議
- 術語表