php + webdav 做一个“svn 复制 url url”命令

发布于 2024-10-15 10:23:02 字数 882 浏览 4 评论 0原文

我正在尝试创建一个自动 svn“标记/导出”按钮,以便从我们的开发测试阶段实时环境中移动。

我正在使用 phpsvnclient 的稍微修改(固定)版本 将 webdav 格式的 http 请求发送到我们的 jira svn 存储库。我不想依赖任何 php 库/模块,而只使用核心 php 代码来完成此任务。我还希望避免使用 shell_exec (我已经在工作了)。

我正在创建的过程是:

1.) 获取当前环境版本标记 ($major.$minor.$svn_version)

2.) 增加 $minor #

3.) 获取 /trunk 的最新版本 # 并将其设置为 $svn_version新的发布标签

4.) svn copy /trunk /tags/$new_release_tag

http ://www.webdav.org/specs/rfc4918.html#copy.for.collections

在步骤 #3 中,我可以发送 webdav 请求来获取 /trunk 的版本 #,但我不这样做似乎能够发送正确的 webdav 命令来将 /trunk 集合复制到 /tags/$new_release_tag

我收到的 http 响应状态为 409。

我想它可能正在等待提交消息,或者我需要先 mkcol。我找不到发送提交消息的文档,当我尝试 MKCOL /tags/$new_release_tag 时,我也收到 409。

我有 Jira studio 的开放票证,但到目前为止他们的答案是他们不支持'自定义 svn 客户端':(

有什么想法吗?

I am trying to create an automagic svn 'tag/export' button for moving from our dev-test-stage-live environments.

I am using a slightly modified (fixed) version of phpsvnclient
to send http requests in the webdav format to our jira svn repository. I'd prefer to not rely on any php library/module and use only core php code to accomplish this. I'd also prefer to avoid using shell_exec (which I already have working).

The process I am creating is:

1.) Get current environments release tag ($major.$minor.$svn_version)

2.) Increment the $minor #

3.) Get latest version # for /trunk and make that the $svn_version of the new release tag

4.) svn copy /trunk /tags/$new_release_tag

http://www.webdav.org/specs/rfc4918.html#copy.for.collections

In step #3, I am able to send a webdav request to get the version # for /trunk, but I do not seem to be able to send the proper webdav command to copy the /trunk collection to /tags/$new_release_tag

I am getting a http response status of 409.

I thought maybe it was expecting a commit message or that I needed to mkcol first. I can't find documentation for sending a commit message and when I try to MKCOL /tags/$new_release_tag , I also get a 409.

I have an open ticket with Jira studio, but so far their answer is that they don't support 'custom svn clients' :(

Any ideas?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

栀梦 2024-10-22 10:23:02

我认为复制和使用 autoversioning 更容易

I think it's easier to just copy and use autoversioning

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文