git svn和更新的svn url

git svn和更新的svn url,git,svn,github,git-svn,sourceforge,Git,Svn,Github,Git Svn,Sourceforge,我使用git svn处理sourceforge上托管的svn存储库。最近,我更新了sourceforge项目,从而对svn存储库进行了更改。确切地说,现在可以使用svn+ssh访问新的svn存储库,而旧的存储库已设置为只读 现在,在本地git svn clone目录中,我更新了.git/config以使用新的url更新以前的url。但是,在执行git svn info或git svn rebase时,会出现以下错误: 无法从工作树历史记录中确定上游SVN信息 此外,我使用以下命令创建了一个新的g

我使用git svn处理sourceforge上托管的svn存储库。最近,我更新了sourceforge项目,从而对svn存储库进行了更改。确切地说,现在可以使用svn+ssh访问新的svn存储库,而旧的存储库已设置为只读

现在,在本地git svn clone目录中,我更新了.git/config以使用新的url更新以前的url。但是,在执行git svn info或git svn rebase时,会出现以下错误: 无法从工作树历史记录中确定上游SVN信息

此外,我使用以下命令创建了一个新的git svn克隆: git svn init-T trunk-T标记-b分支svn+ssh://USER@svn.code.sf.net/p/dmtcp/code-dmtcp-git

此克隆工作正常,没有问题。但是,引用与旧克隆不同

为了使事情变得复杂,我在github上维护了一个git存储库,在那里,一旦将更改提交给sourceforge svn(出于历史原因),我就会推送这些更改。所有这些都用于处理以前的sourceforge svn url。但是现在有了更新后的存储库,refs变得一团糟,即它们与github上的存储库不匹配

当然,我可以用“git push-f”来更新裁判,但我想知道是否有人对修复裁判有任何想法/想法


谢谢

git svn使用svn存储库的根URL不仅仅用于访问 那个仓库。它还需要确定svn分支,以及(至少) 默认情况下,URL将包含在提交消息中。后一个原因是 为什么新克隆会将所有提交显示为不同

但是,您可以将其配置为继续使用其他URL 使用新URL实际访问存储库时的用途。你只是 需要将
rewriteRoot
项添加到
.git/config
文件,并将其设置为svn存储库的旧URL。那个
应该允许您继续从svn获取更新。

我确实读过关于rewriteRoot的文章,但没有注意了解它的用途。谢谢你的解释!!(一旦我获得足够的声誉,我将“投票”你的答案:-)