git push - libgit2/libgit2sharp GitHub Wiki
git-push
Pushes updates to a remote using Authentication
Git
$ git push
LibGit2Sharp
using (var repo = new Repository("path/to/your/repo"))
{
LibGit2Sharp.PushOptions options = new LibGit2Sharp.PushOptions();
options.CredentialsProvider = new CredentialsHandler(
(url, usernameFromUrl, types) =>
new UsernamePasswordCredentials()
{
Username = USERNAME,
Password = PASSWORD
});
repo.Network.Push(repo.Branches[BRANCHNAME], options);
}
Another variant, using Remote to push to the origin:
using (var repo = new Repository("path/to/your/repo"))
{
Remote remote = repo.Network.Remotes["origin"];
var options = new PushOptions();
options.CredentialsProvider = (_url, _user, _cred) =>
new UsernamePasswordCredentials { Username = "USERNAME", Password = "PASSWORD" };
repo.Network.Push(remote, @"refs/heads/master", options);
}