From c621768b292f14fe544730ff4635eaa9bd1a3005 Mon Sep 17 00:00:00 2001 From: Orgad Shaneh Date: Sun, 14 Jun 2015 23:19:01 +0300 Subject: [PATCH] Git: Show original branch name while rebasing Change-Id: I104afed7d2d5f37d391b7690f81fbad07363907c Reviewed-by: Tobias Hunger --- src/plugins/git/gitclient.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/plugins/git/gitclient.cpp b/src/plugins/git/gitclient.cpp index 27032a711c3..8e29f4012bc 100644 --- a/src/plugins/git/gitclient.cpp +++ b/src/plugins/git/gitclient.cpp @@ -1324,9 +1324,18 @@ QString GitClient::synchronousCurrentLocalBranch(const QString &workingDirectory { QByteArray outputTextData; QStringList arguments; + QString branch; arguments << QLatin1String("symbolic-ref") << QLatin1String(HEAD); if (vcsFullySynchronousExec(workingDirectory, arguments, &outputTextData, 0, silentFlags)) { - QString branch = commandOutputFromLocal8Bit(outputTextData.trimmed()); + branch = commandOutputFromLocal8Bit(outputTextData.trimmed()); + } else { + const QString gitDir = findGitDirForRepository(workingDirectory); + const QString rebaseHead = gitDir + QLatin1String("/rebase-merge/head-name"); + QFile head(rebaseHead); + if (head.open(QFile::ReadOnly)) + branch = QString::fromUtf8(head.readLine()).trimmed(); + } + if (!branch.isEmpty()) { const QString refsHeadsPrefix = QLatin1String("refs/heads/"); if (branch.startsWith(refsHeadsPrefix)) { branch.remove(0, refsHeadsPrefix.count());