我有一个工作目录,我在其中一台计算机上使用 GIT 进行跟踪,并且在过去的某个时间点,我在外部硬盘驱动器上创建了一个远程(裸机)存储库。这个遥控器叫做origin
. 然后我稍后在其他计算机上克隆了该存储库。自从我创建 以来origin
,我通过将所有更改从任何计算机推送到它来确保始终保持最新状态。然后我将这些更改拉回其他计算机,以便我的工作目录都相同。
前几天我决定重组我的外置硬盘。我在驱动器上的不同位置创建了一个新的裸仓库(我们称之为它other_remote
),将其作为新远程添加到我的一台计算机上的工作目录中,并将该工作目录推送到它。
现在,我打算origin
从我的硬盘中删除 repo,但在继续之前,我有疑问,我决定比较两个远程 repo,以确保我没有做让我后悔的事情。
我开始了du
,我得到了这个:
$ du -sch origin
207M origin
207M total
$ du -sch other_remote
34M other_remote
34M total
现在吓到我了!我显然还没有删除origin
。我做了很多研究(在这里和谷歌上),但我找不到任何相关信息。
我发现的唯一一件事是有人说你可以用它git count-objects -v
来很好地估计回购的大小。但同样,这个命令在我的两个裸仓库中给出了完全不同的结果:
$ cd path/to/origin
$ git count-objects -v
count: 137
size: 211976
in-pack: 0
packs: 0
size-pack: 0
prune-packable: 0
garbage: 0
$ cd other/path/to/other_remote
$ git count-objects -v
count: 6
size: 9888
in-pack: 131
packs: 1
size-pack: 24725
prune-packable: 0
garbage: 0
谁能帮我理解为什么我的两个远程仓库如此不同?我可以安全地擦除origin
并只保留other_remote
吗?如果我这样做会丢失一些信息吗?
非常感谢