#c# #mercurial #bitbucket #bitbucket-api
#c# #mercurial #bitbucket #bitbucket-api
Вопрос:
Я хотел бы создать образец приложения, которое может клонировать репозиторий пользователя, добавлять в него некоторые файлы и отправлять обратно в удаленный репозиторий. Я использовал Mercurial.ИСПОЛЬЗУЙТЕ 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:LombiqTestRepostestrepo3" 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) итак, у меня есть значение токена и секрет токена.
Как я могу использовать эти значения для отправки содержимого локального репозитория в удаленный репозиторий с новым файлом в нем? И как я могу использовать значение токена и секрет токена для выполнения этой операции?
Большое вам спасибо!
Комментарии:
1. Как бы вы прошли аутентификацию с помощью клиента командной строки?
2. Я создал приложение в bitbucket и использую это приложение для аутентификации пользователя, поэтому я получил токен. И я хотел бы использовать этот тикет, а не комбинацию имени пользователя / пароля для отправки в репозиторий пользователя.
3. Вы не отвечаете на мой вопрос. Как выполнить аутентификацию в bitbucket с помощью клиента командной строки, т.Е. hg.exe используя этот тикет? можете ли вы пройти аутентификацию, используя его с помощью клиента командной строки? Если да, то как, вам нужно отредактировать какой-то конфигурационный файл, можете ли вы передать некоторые параметры клиенту?
4. К сожалению, я не знаю, как использовать клиент командной строки для аутентификации с помощью этого билета, и я не нашел ни одного примера решения этой проблемы. Есть ли у вас какие-либо идеи, как использовать командную строку для аутентификации с помощью токена?
5. Вообще ничего, но если командная строка не может этого сделать, тогда Mercurial. Net не может этого сделать, потому что это просто оболочка для клиента командной строки. Итак, вам нужно выяснить, следует ли, и если да, то как, сначала сделать это с помощью клиента командной строки, а затем выполнить это с помощью Mercurial. После этого легко создать Net.