章节 ▾
第二版
-
1. 起步
-
2. Git 基础
-
3. Git 分支
-
4. 服务器上的 Git
- 4.1 协议
- 4.2 在服务器上部署 Git
- 4.3 生成 SSH 公钥
- 4.4 架设服务器
- 4.5 Git Daemon
- 4.6 Smart HTTP
- 4.7 GitWeb
- 4.8 GitLab
- 4.9 第三方托管服务
- 4.10 小结
-
5. 分布式 Git
-
A1. 附录 A: Git 在其他环境
- A1.1 图形界面
- A1.2 Visual Studio 中的 Git
- A1.3 Visual Studio Code 中的 Git
- A1.4 IntelliJ / PyCharm / WebStorm / PhpStorm / RubyMine 中的 Git
- A1.5 Sublime Text 中的 Git
- A1.6 Bash 中的 Git
- A1.7 Zsh 中的 Git
- A1.8 PowerShell 中的 Git
- A1.9 小结
-
A2. 附录 B: 在应用程序中嵌入 Git
-
A3. 附录 C: Git 命令
A3.11 附录 C: Git 命令 - 管理
管理
如果你正在管理 Git 仓库或者需要大规模修复某些东西,Git 提供了许多管理命令来帮助你。
git gc
git gc 命令会对你的仓库进行“垃圾回收”,删除数据库中不必要的文件,并将剩余文件打包成更高效的格式。
此命令通常在后台为你运行,但如果你愿意,可以手动运行它。我们在维护中介绍了一些示例。
git reflog
git reflog 命令会遍历你在工作时所有分支头部的日志,以查找你可能因重写历史而丢失的提交。
我们主要在RefLog 短名称中介绍此命令,其中我们展示了正常用法以及如何使用 git log -g 查看与 git log 输出相同的信息。
我们还在数据恢复中通过一个实际的例子来恢复这种丢失的分支。
git filter-branch
git filter-branch 命令用于根据特定模式重写大量提交,例如在所有地方删除一个文件,或者将整个仓库过滤到单个子目录以提取项目。
在从每次提交中删除文件中,我们解释了该命令并探讨了几种不同的选项,例如 --commit-filter、--subdirectory-filter 和 --tree-filter。
在Git-p4中,我们使用它来修复导入的外部仓库。