You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

将SVN中/branch目录内容迁移至/trunk并保留历史的解决方案

解决SVN无/trunk目录的Git迁移问题

方法一:直接用git svn指定自定义trunk路径(无需修改SVN仓库)

git svn默认会识别/trunk、/branches、/tags这类标准目录,你的仓库代码存在/branch目录,直接在clone时通过参数指定trunk路径即可完整保留历史:

git svn clone --trunk=branch --no-branches --no-tags <你的SVN仓库URL>
  • --trunk=branch:告知git svn将/branch作为主干目录处理
  • --no-branches和--no-tags:由于仓库没有标准的分支/标签目录,添加这两个参数避免git svn尝试查找它们引发报错

方法二:先在SVN仓库内将/branch迁移至/trunk(保留历史)

如果需要先调整SVN目录结构,把/branch的内容迁移到/trunk并保留所有提交历史,执行以下步骤:

  1. 先将整个SVN仓库checkout到本地:
svn checkout <你的SVN仓库URL> svn-local
cd svn-local
  1. 使用svn move命令完成目录迁移,该操作会完整保留历史记录:
svn move branch trunk
  1. 将目录变更提交到SVN服务器:
svn commit -m "Move branch to trunk to match standard SVN layout"
  1. 此时SVN仓库已具备标准/trunk目录,可正常执行git svn clone:
git svn clone <你的SVN仓库URL>

注意:如果有其他开发者使用该SVN仓库,需通知他们更新本地工作副本,避免后续操作冲突。

内容的提问来源于stack exchange,提问作者Boomfelled

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 16:22:07