2013-06-05 71 views
0

我希望我可以在这里提出我的问题,不要因任何原因遭到抨击。如何将SVN-diff导入GIT?

我将一个Subversion版本库移到了git(bitbucket),任何工作都可以正常工作。现在一些用户在那里提交了对旧的svn-repository的更改。

现在我创建了一个svn转储为缺少的修订,并不知道如何将其导入到git中。 'git svn clone'命令是我如何理解它仅用于完整转储!?

在不破坏新的新git-repro的情况下,我需要什么命令进行导入?

回答

1

假设你是不是在Windows OS:

git svn clone ${svn_url} tmpdir 
cd tmpdir 
git format-patch ${start_rev}..${end_rev} 
patch_dir=`pwd` 
cd ${git_repo_dir} 
git am ${patch_dir}/*.patch 
rm -rf ${patch_dir} 
+0

这听起来很不错。这些补丁是否也包含新的和二进制文件以及用户留下的提交评论? – Daniel

+0

它确实添加了文件,我相信它保留了二进制文件,并使用用户评论(包括他们的名字)。 – cforbish