【发布时间】:2015-03-16 19:27:27
【问题描述】:
我正在尝试将现有的 SVN 存储库迁移到 Git。
当我尝试以下命令时:
$ git svn clone svn://<address of repo>
我得到错误:
Can't use have both 'noMetadata' and 'useSvmProps' options set!
如何“取消设置”这些选项之一?
请注意,我使用的是 SVN 版本 1.7.3 和 Git 1.9.0。
【问题讨论】:
-
我最好的猜测是你在你的全局 .gitconfig 中设置了一些不应该的东西。
git config --get-all svn-remote.noMetadata说什么?git config --get-all svn-remote.useSvmProps呢?我相信你应该在 git-svn 克隆的 repo 上看不到任何东西。检查并查看您的 ~/.gitconfig 中是否有svn-remote部分可能很有用。不应该有。这些设置旨在处于回购级别。也可能存在错误。 -
感谢您的帮助。
git config --get-all svn-remote.noMetadata什么也不回馈。git config --get-all svn-remote.useSvmProps什么也不回馈。~/.gitconfig仅包含我的姓名和电子邮件地址设置。 -
我不确定发生了什么,但您的环境似乎有些不同。这些选项在初始化或克隆时设置。请参阅
git svn --help了解更多信息。也许你有一些与 shell 相关的问题? FWIW,我使用的是 Git 2.3.1 和 Subversion 1.7.19。 -
“选项在初始化或克隆时设置”是什么意思?第一步创建的 Git 存储库没有配置文件。
-
我的意思是,这些选项是由在您执行
git svn clone或git svn init时传入的标志设置的(--no-metadata控制一个标志,--use-svm-props控制另一个)。我想应该有一些配置文件,或者没有回购。我克隆了一个小型 Subversion 存储库 (git svn clone http://django-filebrowser.googlecode.com/svn/trunk/filebrowser/ django-filebrowser),我还尝试使用--use-svm-props(git svn clone --use-svm-props http://django-filebrowser.googlecode.com/svn/trunk/filebrowser/ django-filebrowser)。第二个失败,但它设置了 useSvmProps。