{"thread":{"id":"9785","subject":"[PATCH] Clean up .dotest if an error occurs before rebase work starts","startedAt":"2007-09-05T19:27:16Z","lastAt":"2007-09-05T20:07:10Z","messageCount":2,"participants":["Robin Rosenberg","Junio C Hamano"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"52625","messageId":"1189020436633-git-send-email-robin.rosenberg@dewire.com","threadId":"9785","inReplyTo":null,"subject":"[PATCH] Clean up .dotest if an error occurs before rebase work starts","fromName":"Robin Rosenberg","fromEmail":"robin.rosenberg@dewire.com","sentAt":"2007-09-05T19:27:16Z","receivedAt":"2007-09-05T19:27:16Z","isPatch":true,"sender":{"key":"robin.rosenberg@dewire.com","avatar":"https://avatars.githubusercontent.com/u/46357?v=4"},"body":"Signed-off-by: Robin Rosenberg <robin.rosenberg@dewire.com>\n---\n git-rebase.sh |   18 ++++++++++++++----\n 1 files changed, 14 insertions(+), 4 deletions(-)\n\ndiff --git a/git-rebase.sh b/git-rebase.sh\nindex 3bd66b0..81c48d1 100755\n--- a/git-rebase.sh\n+++ b/git-rebase.sh\n@@ -253,23 +253,33 @@ else\n fi\n \n # The tree must be really really clean.\n-git update-index --refresh || exit\n+git update-index --refresh || {\n+\trm -rf .dotest\n+\texit 1\n+}\n+\n diff=$(git diff-index --cached --name-status -r HEAD)\n case \"$diff\" in\n ?*)\techo \"cannot rebase: your index is not up-to-date\"\n \techo \"$diff\"\n+\trm -rf .dotest\n \texit 1\n \t;;\n esac\n \n # The upstream head must be given.  Make sure it is valid.\n upstream_name=\"$1\"\n-upstream=`git rev-parse --verify \"${upstream_name}^0\"` ||\n-    die \"invalid upstream $upstream_name\"\n+upstream=`git rev-parse --verify \"${upstream_name}^0\"` || {\n+\trm -rf .dotest\n+\tdie \"invalid upstream $upstream_name\"\n+}\n \n # Make sure the branch to rebase onto is valid.\n onto_name=${newbase-\"$upstream_name\"}\n-onto=$(git rev-parse --verify \"${onto_name}^0\") || exit\n+onto=$(git rev-parse --verify \"${onto_name}^0\") || {\n+\trm -rf .dotest\n+\texit 1\n+}\n \n # If a hook exists, give it a chance to interrupt\n if test -x \"$GIT_DIR/hooks/pre-rebase\"\n-- \n1.5.3\n"},{"id":"52629","messageId":"7vmyw0j2q9.fsf@gitster.siamese.dyndns.org","threadId":"9785","inReplyTo":"1189020436633-git-send-email-robin.rosenberg@dewire.com","subject":"Re: [PATCH] Clean up .dotest if an error occurs before rebase work starts","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2007-09-05T20:07:10Z","receivedAt":"2007-09-05T20:07:10Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"It looks to me that we should instead delay the creation of\nthat .dotest directory until we determine that we _are_ going to\nbe able to run git-rebase, no?\n"}]}