diff options
| author | Jarek Kobus <jaroslaw.kobus@qt.io> | 2025-07-02 13:05:03 +0200 |
|---|---|---|
| committer | Jarek Kobus <jaroslaw.kobus@qt.io> | 2025-07-07 08:43:54 +0000 |
| commit | 8aa356ef062ac57efbcbc2a70f5fbb67f3658719 (patch) | |
| tree | 4d6dfd54a82e1537598b9a1d107d7a816148385a /src/plugins/git/gitplugin.cpp | |
| parent | 1df7f121f5800e7c2b7c8df6f054b0b301f84f5c (diff) | |
Vcs: Introduce cloneTask()
Change-Id: I06eb974e4ac510a059fbc2a653698deea22f99e2
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Diffstat (limited to 'src/plugins/git/gitplugin.cpp')
| -rw-r--r-- | src/plugins/git/gitplugin.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/plugins/git/gitplugin.cpp b/src/plugins/git/gitplugin.cpp index 03010023d6f..a073aa3f26b 100644 --- a/src/plugins/git/gitplugin.cpp +++ b/src/plugins/git/gitplugin.cpp @@ -83,6 +83,7 @@ Q_DECLARE_METATYPE(Git::Internal::FileStates) using namespace Core; +using namespace Tasking; using namespace TextEditor; using namespace Utils; using namespace VcsBase; @@ -175,6 +176,7 @@ public: QString vcsTopic(const FilePath &directory) final; VcsCommand *createInitialCheckoutCommand(const InitialCheckoutData &data) final; + Tasking::ExecutableItem cloneTask(const InitialCheckoutData &data) const final; void fillLinkContextMenu(QMenu *menu, const FilePath &workingDirectory, @@ -1956,6 +1958,17 @@ VcsCommand *GitPluginPrivate::createInitialCheckoutCommand(const InitialCheckout return command; } +ExecutableItem GitPluginPrivate::cloneTask(const InitialCheckoutData &data) const +{ + const CommandLine command{gitClient().vcsBinary(data.baseDirectory), + {"clone", "--progress", data.extraArgs, data.url, data.localName}}; + return vcsProcessTask({.runData = {command, data.baseDirectory, + gitClient().processEnvironment(data.baseDirectory)}, + .flags = RunFlags::SuppressStdErr, + .stdOutHandler = data.stdOutHandler, + .stdErrHandler = data.stdErrHandler}); +} + GitPluginPrivate::RepoUrl GitPluginPrivate::getRepoUrl(const QString &location) const { return GitRemote(location); |
