Я пытаюсь создать скрипт python, который будет проверять наличие изменений в моей локальной рабочей папке git и автоматически отправлять их в онлайн-репозиторий. В настоящее время для этого используется только git вручную. Я хочу знать, что потребуется скрипту, чтобы сделать это без ручного вмешательства.
Команды, которые я бы набрал в своей оболочке:
#for checking the status, and determining if there are untracked files
git status
#if there are untracked files...add them
git add .
#add my commit message
git commit -m "7/8/2012 3:25am"
#push it to my online repo
git push origin master
#check if changes came on remote
git diff origin/master
#merge my repo with origin
git merge origin/master
При выполнении git push вам всегда нужно вводить имя пользователя/пароль. Я знаю, что у git есть способ обойти это, который включает в себя создание ключей ssh и все такое. Но я предполагаю, что GitPython каким-то образом это делает. Я имею в виду, что мы можем передать имя пользователя/пароль через код или использовать первый вариант. Итак, каковы мои варианты аутентификации при использовании GitPython?
Изменить: есть приложения, которые фактически генерируют ключи ssh, например. приложение для Windows на github. Как приложение Windows делает это? Я предполагаю, что для этого наверняка есть какой-то git api...