使用Stash(bitbucket服务器)REST API将文件提交到git存储库

问题描述 投票:8回答:2

我正在使用Atlassian Stash(Bitbucket服务器)来管理我的git存储库。最近我要求使用Stash REST API将文件(新创建的.xml文件)提交到我的Git存储库。我已经阅读了文档,但似乎REST API不支持该功能。

我是否正确,或者这可能以某种方式?

git bitbucket-server bitbucket-api
2个回答
5
投票

这不能通过Stash / Bitbucket Server REST API完成。我不得不转移到JGit,它是GIT和Application之间通信的Java包装器。

问题Is it possible to commit a file to a remote base repository using JGit有更多的信息。


4
投票

可能你正在寻找

PUT /rest/api/1.0/projects/{projectKey}/repos/{repositorySlug}/browse/{path:.*}

来自API的文档

PUT /rest/api/1.0/projects/{projectKey}/repos/{repositorySlug}/browse/{path:.*}

更新给定存储库和分支上的路径内容。此资源接受PUT多部分表单数据,其中包含名为content的表单字段中的文件。更新'README.md'的示例curl请求将是:

curl -X PUT -u用户名:密码-F content [email protected] -F'message =使用文件编辑REST API更新'-F branch = master -F sourceCommitId = 5636641a50b http://example.com/rest/api/latest/projects/PROJECT_1/repos/repo_1/browse/README.md

  • branch:应修改或创建路径的分支
  • content:路径消息中文件的完整内容:与此更改关联的消息,用作提交消息。如果应使用默认消息,则返回null。
  • sourceCommitId:编辑之前文件的提交ID,用于标识内容是否已更改。如果这是一个新文件,则返回null。

可以在新分支上更新或创建该文件。在这种情况下,应提供sourceBranch参数以标识新分支的起始点,而branch参数标识用于创建新提交的分支。

© www.soinside.com 2019 - 2024. All rights reserved.