.cmd批处理文件没有将我的本地.git repo推送到GitHub

时间:2014-12-07 21:27:56

标签: windows git batch-file github cmd

我有这个' gittify.cmd'我的工作目录中的批处理文件:

git status
git add --all
git status
set /p commitComment=Enter the Commit Comment:%=%
@echo git commit -m "%commitComment%"
git status
git push origin master

问题在于它没有将更改推送到GitHub ......但是如果我手动输入命令,命令就可以正常工作。

这是" git push origin master":

之后的最后一个命令
C:\www\lantosistvan.com>git push origin master
github --credentials get: github: command not found
Username for 'https://github.com': <My username>
Password for 'https://<My username>@github.com':
github --credentials store: github: command not found
Everything up-to-date

在此之后,我需要使用以下命令从本地.git删除特定文件:

git reset HEAD <stucked file>

更新1:

这是我的路径:

C:\Users\<My username>\AppData\Local\GitHub\PortableGit_<code>\bin

我可以毫无问题地在cmd和ConEmu中运行git。

git config --global credential.helper

没有显示任何内容。

当我推送到GitHub时,我没有使用SSH。我总是输入我的用户名和通行证。

更新2:

在我的电脑上,同时安装了GitHub和Git Bash。 PATH仅定向到AppData下的GitHub文件夹。

更新3 - 解决方案:

出于某种原因,@ echo引起了错误。它只是简单的块以某种方式提交。所以在git push origin master之前,我的工作目录并不干净。删除@echo可以解决问题:

git status
git add --all
git status
set /p commitComment=Enter the Commit Comment:%=%
git commit -m "%commitComment%"
git status
git push origin master

1 个答案:

答案 0 :(得分:0)

看起来您为Git配置了凭据帮助,并且在本地调用它似乎存在问题。

您可以执行以下操作:通过运行

检查安装了哪个凭据帮助程序
git config --global credential.helper

这应该打印凭证帮助程序可执行文件的名称和路径。验证此文件是否已在本地安装,并包含在shell的路径中。

从消息中看,github可执行文件不在PATH上。尝试修复它,然后再次运行批处理文件。