4

背景

我正在向使用 subversion 的项目添加一些功能 - 我正在使用 git-svn 将其克隆到我的本地存储库, git-svn rebase 以保持官方主干中的最新更改并保持历史线性。

最近我忘记了自己,做了一些合并,这弄乱了我的变基——长话短说,我需要花一些时间来挑选樱桃,让历史再次线性化。在那之后 1 次 rebase 就好了,但现在试图让 git-svn rebase 显示从 2008 年开始的颠覆提交之间的冲突(大约 700 次提交),即使历史似乎是线性的。

问题

  1. 有没有办法用 svn trunk 重建/重新同步我的 git 存储库?
  2. 如果我在另一台计算机上克隆我的 git 存储库(没有 .git/svn 文件夹) - 是否可以使用 svn 对其进行 rebase,知道 repo url 和最后一个 rebase 修订版?
4

1 回答 1

2

您可以将分支重置为绝对同步的提交(一些旧的),然后进行变基以进行同步。

要保存本地所做的更改,您可能希望在之前分支(并在之后从这个新分支中挑选必要的更改)

git branch branch_with_my_changes
git reset --hard very_old_commit_that_is_synced
git svn rebase
于 2010-03-29T12:52:36.413 回答