好吧,我已经尝试了所有可以在stackoverflow上找到的答案,但显然似乎没有人能够解决我的问题.我想将SVN制作的补丁应用到git存储库.显然,最简单的方法是使用'git apply',但这似乎不起作用.
$ git apply --ignore-space-change --ignore-whitespace < xxx_parser.patch
<stdin>:10: trailing whitespace.
FORCE_LA_CHECK = false; stdin:23: trailing whitespace.
<stdin>:79: trailing whitespace
.
.
.
.
error: pmd/grammar/JspParser.jjt: No such file or directory
error: patch failed: pmd/pom.xml:251
error: pmd/pom.xml: patch does not apply
Run Code Online (Sandbox Code Playgroud)
这是xxx_parser.patch的内容:
$ head xxx_parser.patch Index: etc/grammar/JspParser.jjt
--- etc/grammar/JspParser.jjt (revision 7704)
+++ etc/grammar/JspParser.jjt (working copy)
Run Code Online (Sandbox Code Playgroud)
现在为什么它抱怨它找不到文件pmd/grammar/JspParser.jjt?
补丁中的路径指向正确的目录.
emc*_*lle 50
我在使用git应用SVN生成的补丁方面遇到了一些问题.我建议直接使用patch
命令应用任何subversion补丁,并使用git验证是否已成功应用所述补丁.
$ patch -p0 < xxx_parser.patch
$ git diff
Run Code Online (Sandbox Code Playgroud)
如果您patch
在命令行中具有可执行命令,则@emcconville应答有效.
为他人:
去svn回购
svn diff --git >> gitFormat.patch
从您(将此文件复制到)git repo
git应用gitFormat.patch