如果你想在本地的git仓库中切换svn源并保留所有的提交历史,你可以按照以下步骤::
1. 首先,你需要用新的svn源地址重新克隆一份新的本地仓库:
git svn clone https://new.svn.repo.url/new-repo
2. 然后,进入新的本地仓库的目录:
cd new-repo
3. 你可以看到所有的svn提交历史都被保留下来了:
git log
4. 接下来,你需要从旧的仓库中抓取所有的git提交历史。首先,你需要添加一个指向旧仓库的远程:
git remote add old-repo /path/to/old/repo
5. 然后,抓取旧的仓库中的所有历史:
git fetch old-repo
6. 把这些历史合并进你的master分支:
git merge old-repo/master
7. 最后,你可以把旧的远程删除:
git remote remove old-repo
现在,你的新仓库中既有新的svn提交历史,也有旧的git提交历史,而且所有的历史都被保留下来了。