我想创建一个示例应用程序,它可以克隆用户的存储库,在其中添加一些文件,然后推回到远程存储库。我使用Mercurial.NET C#API来创建这个应用程序。
string repoUrl = "https://bitbucket.org/USERNAME/REPONAME";
var repoPath = @"THE LOCAL PATH";
if (Directory.Exists(repoPath))
Directory.Delete(repoPath, true);
Directory.CreateDirectory(repoPath);
var repo = new Mercurial.Repository(repoPath);
repo.Clone(repoUrl, new CloneCommand().WithObserver(new DebugObserver()).WithUpdate(false));
Random rand = new Random();
string filename = "data" + rand.Next(0, 1000).ToString() + ".txt";
using (StreamWriter _testData = new StreamWriter(@"E:\Lombiq\TestRepos\testrepo3\" + filename))
{
_testData.WriteLine("some text"); // Write the file.
}
repo.AddRemove(new AddRemoveCommand()
.WithIncludePattern("data*.txt"));
repo.Commit("test commit");
repo.Push(repoUrl); //How to add credentials?
我在CSharp.Bitbucket(https://github.com/scottksmith95/CSharp.Bitbucket)的帮助下成功验证了用户,因此我获得了令牌值和令牌密钥。
如何使用这些值将本地存储库的内容推回到包含新文件的远程仓库?我如何使用令牌值和令牌密钥来执行此操作?
非常感谢!