rip*_*747 96 svn git format-patch
有没有办法让使用git format-patch创建的补丁兼容svn,以便我可以将它提交给svn repo?
我正在使用github上的svn repo工作,并希望将我的更改提交回主回购.我需要创建一个补丁来执行此操作,但是补丁无法应用,因为git格式的补丁与svn不同.我还没有发现一些秘密吗?
更新:虽然目前没有脚本或本机git方式来做到这一点,但我确实设法找到了今年早些时候关于如何手动完成此任务的帖子.我已按照说明操作,并成功将我的git补丁与svn配合使用.
如果有人可以尝试编写脚本来实现这一目标并为git项目做出贡献,那么我将非常感激.
http://kerneltrap.org/mailarchive/git/2008/1/15/570308/thread#mid-570308
Nic*_*ith 89
我总是要谷歌,但我发现这种方式完美(对我而言)是:
git diff --no-prefix master..branch > somefile.diff,主分区和分支部分是可选的,取决于你想要如何获得你的差异.patch -p0 < somefile.diff.它总是似乎对我来说很好,似乎是我遇到过的最简单的方法.
小智 17
这是一个帮助脚本,用于针对最新的svn变更集和给定的提交进行差异:http: //www.mail-archive.com/dev@trafficserver.apache.org/msg00864.html
#!/bin/sh
#
# git-svn-diff
# Generate an SVN-compatible diff against the tip of the tracking branch
TRACKING_BRANCH=`git config --get svn-remote.svn.fetch | sed -e 's/.*:refs\/remotes\///'`
REV=`git svn find-rev $(git rev-list --date-order --max-count=1 $TRACKING_BRANCH)`
git diff --no-prefix $(git rev-list --date-order --max-count=1 $TRACKING_BRANCH) $* |
sed -e "s/^+++ .*/& (working copy)/" -e "s/^--- .*/& (revision $REV)/" \
-e "s/^diff --git [^[:space:]]*/Index:/" \
-e "s/^index.*/===================================================================/"
Run Code Online (Sandbox Code Playgroud)
Nor*_*sey 10
SVN可能无法理解输出git diff -p,但你可以诉诸暴力:
diff -r遍历两个克隆计算一个真正的补丁.| 归档时间: |
|
| 查看次数: |
31114 次 |
| 最近记录: |