在git快速导出期间修改文件中的SHA

时间:2011-01-27 21:26:21

标签: git plasticscm

我正在写一个从Git到Plastic SCM的进口商,我发现了一个我不知道的案例:

M 100644 :31624 activesupport/lib/active_support/core_ext/array/conversions.rb
M 100644 :31625 activesupport/lib/active_support/vendor.rb
M 160000 70ab0f3cc5921cc67e09741939a08b2582d707cb activesupport/lib/active_support/vendor/i18n-0.0.1

如您所见,最后一个元素(从Git repo本身快速导出导出)进入blob而不是mark。为什么会这样?有没有办法“强制”将所有对象导出为标记??

由于

1 个答案:

答案 0 :(得分:2)

在git树中,1600000的文件模式表示在这种情况下,条目activesupport/lib/active_support/vendor/i18n-0.0.1是子模块。子模块存储在树中,作为子模块应该在的提交的对象名称(即SHA1sum),这是您在输出中看到的值。 fast-export正在输出的内容足以使fast-import重构树,以便新存储库中的git submodule update --init将初始化并将子模块更新为正确的版本。我担心我不确定你的traget SCM中是否存在与git的子模块相同的概念。