我正在使用 laravel 4 框架,为了保持最新状态,我添加了一个名为 upstream 的远程,它指向框架 repo 并运行git fetch
。问题是它在我的本地仓库中提取了框架的整个历史。有什么办法可以删除上游历史?
问问题
610 次
2 回答
3
好吧,这就是 git 的全部意义——每个存储库克隆都是平等的。不要太担心拥有完整的历史记录 - git 在将整个历史记录存储在 git 对象存储中时非常有效(前提git gc
是偶尔执行一次,它就是这样)。
.git
当压缩的 git 对象存储(保存在目录下)的大小超过树顶部的结帐大小时,这种情况相对较少。
换句话说,您不会通过删除远程历史记录来节省太多(几乎没有百分之几)。如果它在查看许多远程分支方面困扰您(但它真的不应该!),您可以简单地删除这个遥控器:
git remote rm upstream
你再也看不到它或它的树枝了。
--depth=1
我非常怀疑使用浅克隆(因此,如果您想进行自己的提交,请不要使用浅克隆。
于 2013-07-16T07:59:18.163 回答
1
如果您不想要整个历史记录,请使用and的 set--depth
选项。此外,如果您只对一个分支感兴趣,那么您可以在克隆时使用该选项:git fetch
git clone
--single-branch
git clone --single-branch --branch=master --depth=1 git://......
于 2013-07-16T06:39:37.233 回答