Использование GitBash Add - Commit - Push-файл в репозиторий GIT из WebApplication при нажатии кнопки - PullRequest
0 голосов
/ 29 января 2019

У меня есть требование, когда мне нужно добавить - зафиксировать - вставить 3 вновь созданных файла в наш репозиторий Git с помощью команд GitBash при нажатии кнопки в веб-приложении.

Я пробовал следующее, но тщетно:

{
    string gitCommand = "git bash";
    string gitAddArgument = @"add -A" ;
    string gitCommitArgument = @"commit""explanations_of_changes"" ";
    string gitPushArgument = @"push our_remote";

    Process.Start(gitCommand, gitAddArgument );
    Process.Start(gitCommand, gitCommitArgument );
    Process.Start(gitCommand, gitPushArgument );
}

При нажатии кнопки Мне нужно вызвать команды Git Bash, зафиксировать 3 файла, а затем нажать «Начало к основному источнику».

1 Ответ

0 голосов
/ 29 января 2019

У вас есть несколько ошибок в ваших командах Git ..

Чтобы добавить все файлы, используйте: git add -A Запишите заглавную букву A Чтобы зафиксировать все измененные файлы с помощью сообщения, используйте: git commit -a -m "Your message here" Чтобы отправить изменения на удаленное использование git push

Чтобы завершить ваш код C #:

{
    string gitCommand = "git";
    string gitAddArgument = "add -A" ;
    string commitMessage = "Your commit message";
    string gitCommitArgument = String.Format("commit -a -m \"{0}\"", commitMessage);
    string gitPushArgument = "push";

    Process.Start(gitCommand, gitAddArgument); // Runs: git add -A
    Process.Start(gitCommand, gitCommitArgument); // Runs: git commit -a -m "Your commit message"
    Process.Start(gitCommand, gitPushArgument); // Runs: git push
}

Примечание

Убедитесь, что программа git находится в пределахваш путь переменный, иначе вы не сможете использовать его таким образом.Если его нет в вашем PATH, используйте абсолютный путь к исполняемому файлу git

Например, в Linux это будет: /usr/bin/git это должен быть текст для gitCommand

...