Git使用技巧与操作指南
1. 仓库筛选与清理
在处理仓库时,为避免破坏原始仓库,可在其克隆副本中操作,并移除所有原始远程引用。之后使用--subdirectory-filter选项筛选子目录,示例命令如下:
$ git filter-branch --subdirectory-filter part4 HEAD若有标签需反映到新仓库,可添加--tag-name-filter cat选项;为避免空提交,可添加--prune-empty选项;若要涵盖所有分支,可用-- --all替代最后的HEAD参数,修订后的命令如下:
$ git filter-branch --tag-name-filter cat \ --subdirectory-filter part4 -- --all操作完成后,需验证内容,过期引用日志,移除原始引用并进行垃圾回收。最后,可能还需返回原始仓库执行不同的git filter-branch操作以移除part4。
2. 恢复提交的技巧
时间是丢失提交的大敌,Git 的垃圾回收机制会清理悬空或未引用的提交和对象。若发现提交丢失较慢,可调整引用日志过期和垃圾回收时未引用提交的默认超时时间