我使用
将SVN存储库转换为gitgit svn clone --stdlayout --authors-file=authors.txt --no-metadata svn://svn.foo.com
出于某种原因,这给了我一个看似裸露的存储库的东西。只有一个.git
目录。在这个克隆的存储库中,我想要一个结账。由于git checkout
不起作用,我跑了
git reset --hard
这是正确的方法吗?它似乎工作,但听起来很吓人。然后我试图运行
git svn rebase
以便将Subversion存储库的最新更改提取到我的git clone中。但是,这不起作用。相反,它会产生消息
无法确定工作树历史记录中的上游SVN信息
有人知道为什么会这样吗?
答案 0 :(得分:3)
我相信这是因为我将--no-metadata
传递给了git svn clone。这就是git-svn(1)手册页中关于“无元数据”选项的说明:
这会在每次提交结束时删除git-svn-id:行。
如果你丢失.git / svn / git-svn / .rev_db文件,git svn将无法重建它,你也无法再次获取。这适用于一次性进口。
我没有那样读过,但显然使用--no-metadata
使得git svn不生成git-svn/.rev_db
文件。我确实有一个.git/svn
子目录,但在{。}}下面没有git-svn
。