diff --git a/src/GitHub.Api/Git/GitClient.cs b/src/GitHub.Api/Git/GitClient.cs index e3f8f5b7b..23c064d47 100644 --- a/src/GitHub.Api/Git/GitClient.cs +++ b/src/GitHub.Api/Git/GitClient.cs @@ -273,7 +273,7 @@ public ITask Fetch(string remote, { //Logger.Trace("Fetch"); - return new GitFetchTask(remote, cancellationToken, processor) + return new GitFetchTask(remote, cancellationToken, true, processor) .Configure(processManager); } diff --git a/src/GitHub.Api/Git/Tasks/GitFetchTask.cs b/src/GitHub.Api/Git/Tasks/GitFetchTask.cs index ec46a51b3..c5a006b8b 100644 --- a/src/GitHub.Api/Git/Tasks/GitFetchTask.cs +++ b/src/GitHub.Api/Git/Tasks/GitFetchTask.cs @@ -10,13 +10,18 @@ class GitFetchTask : ProcessTask private readonly string arguments; public GitFetchTask(string remote, - CancellationToken token, IOutputProcessor processor = null) + CancellationToken token, bool prune = false, IOutputProcessor processor = null) : base(token, processor ?? new SimpleOutputProcessor()) { Name = TaskName; var stringBuilder = new StringBuilder(); stringBuilder.Append("fetch"); + if (prune) + { + stringBuilder.Append(" -p"); + } + if (!String.IsNullOrEmpty(remote)) { stringBuilder.Append(" ");