diff options
author | Petar Perisin <petar.perisin@gmail.com> | 2013-07-11 22:53:38 +0200 |
---|---|---|
committer | Petar Perisin <petar.perisin@gmail.com> | 2013-07-15 16:51:46 +0200 |
commit | 771fe03cfeda0b8514556ca29889fb35116a41c5 (patch) | |
tree | 9d63cb9b467d7a9904bbe0417ed8d95cc07e7165 /src/plugins/git/branchdialog.cpp | |
parent | f45a01b203f661f4ce1ff469ee36e4133e6d4ad0 (diff) | |
download | qt-creator-771fe03cfeda0b8514556ca29889fb35116a41c5.tar.gz |
Git - couple fixes in branch based auto stash
- do not start stash scope when creating auto stash
- return if reset fails
Change-Id: I471abc1d430351192c46ac78041949ba81f11b09
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Diffstat (limited to 'src/plugins/git/branchdialog.cpp')
-rw-r--r-- | src/plugins/git/branchdialog.cpp | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/src/plugins/git/branchdialog.cpp b/src/plugins/git/branchdialog.cpp index 8fc07d8e0d..11459f3a31 100644 --- a/src/plugins/git/branchdialog.cpp +++ b/src/plugins/git/branchdialog.cpp @@ -192,15 +192,17 @@ void BranchDialog::checkout() m_model->checkoutBranch(idx); } else if (branchCheckoutDialog.exec() == QDialog::Accepted && m_model) { - QString stashMessage; - if (branchCheckoutDialog.makeStashOfCurrentBranch() - || branchCheckoutDialog.moveLocalChangesToNextBranch()) { - - if (!gitClient->beginStashScope(m_repository, currentBranch + QLatin1String("-AutoStash"), NoPrompt)) + if (branchCheckoutDialog.makeStashOfCurrentBranch()) { + if (!gitClient->executeSynchronousStash(m_repository, + currentBranch + QLatin1String("-AutoStash"))) { + return; + } + } else if (branchCheckoutDialog.moveLocalChangesToNextBranch()) { + if (!gitClient->beginStashScope(m_repository, QLatin1String("Checkout"), NoPrompt)) return; - stashMessage = gitClient->stashInfo(m_repository).stashMessage(); } else if (branchCheckoutDialog.discardLocalChanges()) { - gitClient->synchronousReset(m_repository); + if (!gitClient->synchronousReset(m_repository)) + return; } m_model->checkoutBranch(idx); @@ -214,7 +216,7 @@ void BranchDialog::checkout() } } - if (!stashMessage.isEmpty() && branchCheckoutDialog.moveLocalChangesToNextBranch()) + if (branchCheckoutDialog.moveLocalChangesToNextBranch()) gitClient->endStashScope(m_repository); else if (branchCheckoutDialog.popStashOfNextBranch()) gitClient->synchronousStashRestore(m_repository, stashName, true); |