Git推送创建GitHub仓库失败,求助问题原因与解决方法
问题原因与解决方法
为什么脚本会报错?
- GitHub远程仓库不能通过
git push直接创建,必须先在GitHub平台上(网页或API)建好对应仓库,你的脚本跳过了这一步,直接往不存在的远程地址推送,所以会提示仓库找不到。
解决方法
方法一:手动先创建GitHub远程仓库
- 登录GitHub网页账号(JT-style)
- 点右上角「+」号,选「New repository」
- 输入和脚本里一致的仓库名称,其他选项按需设置(可以不勾选添加README,脚本已经生成了)
- 仓库创建完成后,再运行你的脚本,
git push就能正常推送了
方法二:用GitHub API实现全自动化
如果想让脚本自动完成所有步骤,不用手动操作网页,可以用GitHub的REST API创建仓库,修改后的脚本如下:
read -p "Enter the name of remote repository: " name mkdir ~/rep/$name cd ~/rep/$name echo "# $name" >> README.md git init git add . git commit -m "first commit" git branch -M main # 替换成你的GitHub个人访问令牌 GITHUB_TOKEN="你的个人访问令牌" # 调用API创建仓库 curl -X POST -H "Authorization: token $GITHUB_TOKEN" \ -d '{"name":"'"$name"'", "private":false}' \ https://api.github.com/user/repos # 添加远程地址并推送 git remote add origin https://github.com/JT-style/$name.git git push -u origin main echo "Done"
- 你需要先在GitHub上生成个人访问令牌,权限要勾选
repo(仓库相关权限) - 把脚本里的
GITHUB_TOKEN换成你自己的令牌 - 如果要创建私有仓库,把
"private":false改成"private":true
内容的提问来源于stack exchange,提问作者John Travolta
相关产品推荐
相关产品推荐

