diff options
author | Orgad Shaneh <orgad.shaneh@audiocodes.com> | 2013-08-26 21:57:38 +0300 |
---|---|---|
committer | Orgad Shaneh <orgads@gmail.com> | 2013-08-28 09:56:47 +0200 |
commit | 0865e9eb277c3cb743bc944f62f0ea188103ae52 (patch) | |
tree | 056437cb0d58c8ee879d7ec5df2e270d47daca78 /src/plugins/git/gitclient.cpp | |
parent | 51f69c8807b21e1b3f2f6d06eb1d5a7e45d3f669 (diff) | |
download | qt-creator-0865e9eb277c3cb743bc944f62f0ea188103ae52.tar.gz |
Git: List branches on show
Change-Id: Ie69a58efc7068c699abf0e3d396216d9809346f4
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Reviewed-by: Petar Perisin <petar.perisin@gmail.com>
Diffstat (limited to 'src/plugins/git/gitclient.cpp')
-rw-r--r-- | src/plugins/git/gitclient.cpp | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/src/plugins/git/gitclient.cpp b/src/plugins/git/gitclient.cpp index b1fc13a214..dcd85653d8 100644 --- a/src/plugins/git/gitclient.cpp +++ b/src/plugins/git/gitclient.cpp @@ -1800,6 +1800,22 @@ void GitClient::synchronousTagsForCommit(const QString &workingDirectory, const } } +QStringList GitClient::synchronousBranchesForCommit(const QString &workingDirectory, const QString &revision) +{ + QString output; + QStringList arguments; + arguments << QLatin1String(noColorOption) << QLatin1String("-a") + << QLatin1String("--contains") << revision; + synchronousBranchCmd(workingDirectory, arguments, &output, 0); + QStringList res; + foreach (const QString &branch, output.split(QLatin1Char('\n'))) { + const QString b = branch.mid(2).trimmed(); + if (!b.isEmpty()) + res << b; + } + return res; +} + bool GitClient::isRemoteCommit(const QString &workingDirectory, const QString &commit) { QStringList arguments; @@ -1958,11 +1974,11 @@ bool GitClient::synchronousBranchCmd(const QString &workingDirectory, QStringLis QByteArray errorText; const bool rc = fullySynchronousGit(workingDirectory, branchArgs, &outputText, &errorText); *output = commandOutputFromLocal8Bit(outputText); - if (!rc) { - *errorMessage = msgCannotRun(QLatin1String("git branch"), workingDirectory, commandOutputFromLocal8Bit(errorText)); - return false; + if (!rc && errorMessage) { + *errorMessage = msgCannotRun(QLatin1String("git branch"), workingDirectory, + commandOutputFromLocal8Bit(errorText)); } - return true; + return rc; } bool GitClient::synchronousTagCmd(const QString &workingDirectory, QStringList tagArgs, QString *output, QString *errorMessage) |