我一直在尝试将命令行中的本地repo更改推送到github。我已经离开git一段时间了,所以我不记得一些事情。在过去的一小时里,我一直试图在没有在Github.com上创建远程仓库的情况下推销仓库。据我所知,git push origin master / git push足以推送本地更改,并在必要时在远程服务器上创建一个repo。但是git push不会让我推动并自动创建回购。
为了节省时间,我在github.com上创建了远程仓库并使用
添加远程仓库网址 git remote add origin https://mygithubrepoUrl.com
并且有效。
是否有必要在Github上创建远程仓库,然后从命令行添加此URL以推送更改? Git不能自动创建repo并推送更改吗?
答案 0 :(得分:14)
你需要在推送之前创建回购,但有hub
为你自动执行此操作:
git init newRepo
cd newRepo
hub create
使用-p
切换到hub create
创建私有存储库。要推送本地master
分支,请发出:
git push -u origin HEAD
该工具还可以创建拉取请求,打开项目页面,检查CI状态,仅通过指定username/repo
来克隆现有的回购,以及更多内容。
项目页面建议将git
别名化为hub
(因为后者会将未知命令转发给git
),但我不建议这样做,即使只是为了区分& #34;裸"来自hub
糖果的Git命令。
答案 1 :(得分:5)
Github API应该可以工作。
首先使用newValue
和API创建回购
https://developer.github.com/v3/repos/#create
curl
然后您可以添加远程和推送,如前所述:
curl -u 'username' https://api.github.com/user/repos -d '{"name":"repository name"}'
答案 2 :(得分:4)
cli.github.com现在是中心的继承人。
创建一个新的GitHub存储库。
用法:
创建一个新的GitHub存储库。
使用“
ORG/NAME
”语法在您的组织内创建一个存储库。用法:
gh repo create [<name>] [flags]
标志:
-d, --description string Description of repository --enable-issues Enable issues in the new repository (default true) --enable-wiki Enable wiki in the new repository (default true) -h, --homepage string Repository home page URL --public Make the new repository public -t, --team string The name of the organization team to be granted access
全局标志:
--help Show help for command -R, --repo OWNER/REPO Select another repository using the OWNER/REPO format
答案 3 :(得分:1)
通过curl
使用REST API的answer by mickiewicz存在许多缺陷,此问题已解决。值得注意的是,这个答案:
curl
使-f
以非零代码退出首先,obtain a token可以访问repo
范围。
REPO_NAME=foo1
GITHUB_TOKEN=0000000000000000000000000000000000000000 # Enter your own.
curl -f -X POST \
-H "Authorization: token ${GITHUB_TOKEN}" -H "Accept: application/vnd.github.v3+json" \
https://api.github.com/user/repos -d "{\"name\": \"${REPO_NAME}\", \"private\": true}"
此答案仅与在user下创建存储库有关。在organization下创建存储库的请求略有不同。
如果您不介意安装GitHub CLI,请改为参考answer by VonC。