author | Eric Wong <normalperson@yhbt.net> | |
Sat, 1 Sep 2007 01:16:12 +0000 (18:16 -0700) | ||
committer | Junio C Hamano <gitster@pobox.com> | |
Sat, 1 Sep 2007 06:22:51 +0000 (23:22 -0700) | ||
commit | 751eb39590a1325e761a84bedd5ca2660d2d3497 | |
tree | 1c921eda3357d7c368685d491215e90a34085cc9 | tree | snapshot |
parent | eeebd8d8c5ab63494abe200b30a840aa99ee7412 | commit | diff |
git-svn: fix dcommit clobbering upstream when committing multiple changes
Although dcommit could detect if the first commit in the series
would conflict with the HEAD revision in SVN, it could not
detect conflicts in further commits it made.
Now we rebase each uncommitted change after each revision is
committed to SVN to ensure that we are up-to-date. git-rebase
will bail out on conflict errors if our next change cannot be
applied and committed to SVN cleanly, preventing accidental
clobbering of changes on the SVN-side.
--no-rebase users will have trouble with this, and are thus
warned if they are committing more than one commit. Fixing this
for (hopefully uncommon) --no-rebase users would be more complex
and will probably happen at a later date.
Thanks to David Watson for finding this and the original test.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Although dcommit could detect if the first commit in the series
would conflict with the HEAD revision in SVN, it could not
detect conflicts in further commits it made.
Now we rebase each uncommitted change after each revision is
committed to SVN to ensure that we are up-to-date. git-rebase
will bail out on conflict errors if our next change cannot be
applied and committed to SVN cleanly, preventing accidental
clobbering of changes on the SVN-side.
--no-rebase users will have trouble with this, and are thus
warned if they are committing more than one commit. Fixing this
for (hopefully uncommon) --no-rebase users would be more complex
and will probably happen at a later date.
Thanks to David Watson for finding this and the original test.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
git-svn.perl | diff | blob | history | |
t/t9106-git-svn-commit-diff-clobber.sh | diff | blob | history |