git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/3] git-svn: error out from dcommit on a parent-less commit
@ 2006-11-23 22:54 Eric Wong
  2006-11-23 22:54 ` [PATCH 2/3] git-svn: correctly handle revision 0 in SVN repositories Eric Wong
  2006-11-23 22:54 ` [PATCH 3/3] git-svn: preserve uncommitted changes after dcommit Eric Wong
  0 siblings, 2 replies; 3+ messages in thread
From: Eric Wong @ 2006-11-23 22:54 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: git, Eric Wong

dcommit would unconditionally append "~1" to a commit in order
to generate a diff.  Now we generate a meaningful error message
if we try to generate an impossible diff.

Signed-off-by: Eric Wong <normalperson@yhbt.net>
---
 git-svn.perl |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)

diff --git a/git-svn.perl b/git-svn.perl
index 80b7b87..f0db4af 100755
--- a/git-svn.perl
+++ b/git-svn.perl
@@ -589,6 +589,13 @@ sub dcommit {
 	chomp(my @refs = safe_qx(qw/git-rev-list --no-merges/, "$gs..HEAD"));
 	my $last_rev;
 	foreach my $d (reverse @refs) {
+		if (quiet_run('git-rev-parse','--verify',"$d~1") != 0) {
+			die "Commit $d\n",
+			    "has no parent commit, and therefore ",
+			    "nothing to diff against.\n",
+			    "You should be working from a repository ",
+			    "originally created by git-svn\n";
+		}
 		unless (defined $last_rev) {
 			(undef, $last_rev, undef) = cmt_metadata("$d~1");
 			unless (defined $last_rev) {
-- 
1.4.4.1.g22a08

^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2006-11-23 22:54 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-11-23 22:54 [PATCH 1/3] git-svn: error out from dcommit on a parent-less commit Eric Wong
2006-11-23 22:54 ` [PATCH 2/3] git-svn: correctly handle revision 0 in SVN repositories Eric Wong
2006-11-23 22:54 ` [PATCH 3/3] git-svn: preserve uncommitted changes after dcommit Eric Wong

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).