我使用Git导入了SVN存储库:
git svn clone --preserve-empty-dirs --stdlayout svn+ssh://... SVN.git
它最终确实成功了,虽然在几次失败的路上我不得不“重启”
git svn fetch
然而,最终似乎一切都很好。 (虽然现在写作时我开始怀疑我是否应该在其他--preserve-empty-dirs
es中提供fetch
?编辑: 不,我不应该这样做。我的评论吼叫。)
然后我想创建.gitignore
,所以我做了
git svn create-ignore
这也成功了。
但最终结果并不令人满意。它确实在许多文件夹中生成了大量.gitignore
个文件。似乎每次SVN都有svn:ignore
属性时,Git会创建相应的.gitignore
文件。
虽然我希望将它们合并到一个根.gitignore
文件中。这可以通过git实现,因为它更加灵活,忽略允许在带有通配符(或没有通配符)的子目录中忽略。我认为任何方式都可以自动将那些“sub-.gitignore
s”转换为根目录中的单个。{/ p>
而且我想拥有它,因为“SVN人员”对我提交超过二十个.gitignore
文件感到不满意......
答案 0 :(得分:24)
我找到了解决方案。您必须使用show-ignore
而不是create-ignore
并将输出保存到文件中。
因此,在克隆存储库后执行以下命令:
git svn show-ignore > .gitignore
来自您拥有.git
目录的存储库根目录。