Я выполняю одну и ту же задачу, часто выполняя и нажимая изменения в удаленной ветке. Иногда ленив, мне нужно было установить набор команд git для автоматического выполнения следующих шагов:
cd D:\wamp\www\projectName
git checkout dev
git add .
git commit -am "made changes"
git push
pause
Я также пробовал:
cd D:\wamp\www\projectName
call git checkout dev
call git add .
call git commit -am "made changes"
call git push
pause
и
cd D:\wamp\www\projectName
git.exe checkout dev
git.exe add .
git.exe commit -am "made changes"
git.exe push
pause
Все работает expet для окончательной команды push
. Вот вывод:
D:\wamp\www\givingcircle>git checkout dev
Already on 'dev'
Your branch is ahead of 'origin/dev' by 1 commit.
D:\wamp\www\givingcircle>git add .
D:\wamp\www\givingcircle>git commit -am "made changes"
# On branch dev
# Your branch is ahead of 'origin/dev' by 1 commit.
#
nothing to commit, working directory clean
D:\wamp\www\givingcircle>git push
Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
D:\wamp\www\givingcircle>pause
Press any key to continue . . .
Как вы можете видеть, для push
я получаю:
D:\wamp\www\givingcircle>git push
Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
Когда я запускаю команды с помощью оболочки git, все работает нормально. Я также добавил git к переменным env для Windows Path.
Есть ли у кого-нибудь представление о том, почему он работает в оболочке git, а не в командной строке? (хотя другие команды работают, но не push
)