使用Git bash创建Bitbucket存储库

时间:2019-05-17 19:32:12

标签: git bitbucket-server bitbucket-api

我正在尝试通过git bash创建一个bitbucket存储库,并且正在使用Curl命令,如下所示:

$ curl -k -X POST -v -u username:xxxxx -H "Content-Type: application/json" \
  https://bitbucket.org.local/projects/proj1/repos/repotest \
  -d '{"scm": "git", "is_private": "true", "fork_policy": "no_public_forks" }'

运行此命令时,我收到无效的凭据错误,并且输出如下所示: enter image description here

我的凭据正确,但是我无法创建存储库。有帮助吗?!

2 个答案:

答案 0 :(得分:2)

您可以尝试使用bitbucket-cli。

首先,使用pip安装它

pip install bitbucket-cli

然后使用创建一个回购

bitbucket create --private --protocol ssh --scm git YOUR_REPO_NAME

请注意,这将创建一个私人git仓库,可以使用--public进行公共访问,如果使用Mercurial可以使用--scm hg。可以通过--username YOUR_USER_NAME添加Username参数。

答案 1 :(得分:0)

尽管pcampana的答案是正确的,并且您可以使用python和pip,但我正在检查curl命令可能有什么问题。而且我猜您在url中缺少其余路径,并且存储库的名称应该在发布数据中。 (https://docs.atlassian.com/bitbucket-server/rest/6.3.1/bitbucket-rest.html#idp152

我想,URL中缺少rest/api/1.0会使服务器认为您想要访问一个“基本”网页,而该网页似乎无法进行基本身份验证。

所以尝试:

curl -k -X POST -v \
    -u username:xxxxx \
    -H "Content-Type: application/json" \
    https://bitbucket.org.local/rest/api/1.0/projects/proj1/repos \
    -d '{"name": "repotest", "scm": "git", "is_private": "true", "fork_policy": "no_public_forks" }'