假设存在两个git repos,repoA
和repoB
。
这些回购已分别初始化(git init
),但包含相同的文件(如二进制数据,即手动的某人cp
'
当然,每个仓库的整个提交链都是完全独立的,并且没有共同的祖先。
假设他们作为单独的分支(即git push remoteName master:repoX
)被推送到远程,文件是否会以git存储的方式进行重复数据删除?
答案 0 :(得分:0)
引用https://git.wiki.kernel.org/index.php/Git_FAQ#How_to_share_objects_between_existing_repositories.3F:
如何在现有存储库之间共享对象?
待办事项
echo "/source/git/project/.git/objects/" > .git/objects/info/alternates
然后用
跟进git repack -a -d -l
其中
-l
表示它只会将“本地”对象放入其中 打包文件(严格来说,它会放置任何松散的物体 备用树也是如此,所以你将拥有一个完整的存档,但它 不会复制已在备用中打包的对象 树)。