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

如何将SVN工作副本便捷转换为Git工作树?

更简便的SVN工作副本转Git工作树方案

嘿,我刚好处理过几乎一模一样的场景,给你分享个完全不用折腾文件移动的顺畅方法,完美保留本地修改:

针对每个站点(生产环境+5个开发环境),直接在当前SVN工作副本的目录下执行以下步骤:

  • 第一步:初始化Git仓库(直接在现有文件上创建,无需克隆新目录)
    git init
    
  • 第二步:关联远程Git仓库
    git remote add origin <你的Git仓库地址>
    
  • 第三步:拉取远程仓库的所有提交记录和分支
    git fetch
    
  • 第四步:关联本地工作区与远程主分支,同时保留本地修改
    (如果远程主分支是master就替换掉main)
    git reset --mixed origin/main
    

为什么这个方案更优?

  • 完全不用复制、移动任何文件,直接在原站点目录操作,彻底避免了文件权限、路径变更带来的问题
  • git reset --mixed参数只会更新Git的提交指针,绝对不会覆盖本地修改的文件,完美满足你保留开发环境本地变更的需求
  • 执行完这些步骤后,你就可以正常使用git add、git commit、git push等Git命令,直接和远程仓库交互

你之前提到的克隆后移动文件的方案确实容易出问题,比如不小心覆盖本地修改、文件同步不全等,这个方法从根源上避免了这些麻烦。另外你说的那个获赞高的非采纳答案,应该是最后一步原本用了会覆盖修改的git pull或者git reset --hard,换成--mixed的reset就安全多了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.06 06:51:50