Files
sourcegit/src/Commands/Pull.cs
leo 40765826ce code_review: PR #1492
- Remove all synchronous method in commands
- `Command.ReadToEndAsync` now is protected method
- Rename `ResultAsync` to `GetResultAsync`
- Call `ConfigureAwait(false)` when there's no context

Signed-off-by: leo <longshuang@msn.cn>
2025-07-03 17:30:06 +08:00

30 lines
750 B
C#

using System.Threading.Tasks;
namespace SourceGit.Commands
{
public class Pull : Command
{
public Pull(string repo, string remote, string branch, bool useRebase)
{
_remote = remote;
WorkingDirectory = repo;
Context = repo;
Args = "pull --verbose --progress ";
if (useRebase)
Args += "--rebase=true ";
Args += $"{remote} {branch}";
}
public async Task<bool> RunAsync()
{
SSHKey = await new Config(WorkingDirectory).GetAsync($"remote.{_remote}.sshkey").ConfigureAwait(false);
return await ExecAsync().ConfigureAwait(false);
}
private readonly string _remote;
}
}