git - 将多个 svn diff merge 为一个大文件

标签 git svn git-svn git-diff

我想将多个“diff”svn 文件 merge 为一个大文件,所有这些文件都是非顺序的。

我相信我需要将 svn diff 文件转换为新格式,其他工具可以将它们组合起来。我不想使用 merge ,我只是想要多个非顺序提交的统一差异。

svn diff -c 1002 > diff2.txt
svn diff -c 1001 > diff1.txt

上面的代码生成了 2 个良好的“svn diff 文件”。我如何将它们结合起来? 我看到 svn diff 有一个“--git”选项,所以我生成了一个与 git 兼容的 diff 文件。我如何获取多个 .gittdiff 文件并将它们组合起来以获得统一的 git 文件。

http://svnbook.red-bean.com/en/1.8/svn.ref.svn.html#svn.ref.svn.sw.git

注意:我使用的是 Windows,所以我需要一个 Windows 解决方案。

最佳答案

您可以尝试 patchutils 附带的 combinediff 。您可以通过 Windows Subsystem for Linux 在 Bash 中轻松运行它。请参阅Windows Subsystem for Linux Installation Guide for Windows 10 .

enter image description here

这是一个例子:

sudo apt-get install patchutils
svn diff -c100001 https://svn.example.com/MyRepo/ > 1.diff
svn diff -c100002 https://svn.example.com/MyRepo/ > 2.diff
combinediff 1.diff 2.diff > out.diff

请注意,我认为您需要调整命令行以满足您的要求。

关于git - 将多个 svn diff merge 为一个大文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57762696/

相关文章:

git - Octopress 和 github 混淆

svn - 如何确定是否使用BDB或fsfs后端创建了Subversion存储库?

svn - 我应该在 SVN 中为发布分支创建一个文件夹吗?

svn - 如何检查我的svn连接?

svn - 克服 git svn 警告

git - 如何在一个工作目录中使用两个 SVN 项目和相应的 git-svn 分支?

git - 除非我在该分支上 checkout ,否则如何防止 git push <branch> 推送?

windows - 如何在 Windows 上使用 SSH 详细模式运行 git 命令?

git - 如何做 git-svn 获取并保留空目录?

git - 为什么在 git reset (--mixed) 之前显式调用 git reset --soft