【问题标题】:Version control on shared web host with Bazaar与 Bazaar 共享 Web 主机的版本控制
【发布时间】:2014-02-13 21:23:40
【问题描述】:

我有一个项目,我将开始在我的一个 Web 服务器上共同开发。由于这种事情的性质,我希望进行一些版本控制。我整天都在寻找适合我需要的东西,而 Bazaar 似乎是要走的路,但我不知道如何配置它。

我的网络主机是 Linux,没有 SSH(据我所知或 SFTP)。我读过你可以在这种情况下使用 Bazaar 来制作一个“哑”的服务器,但我一生都无法弄清楚如何配置或找到指南。那里的一切都需要 SSH/CLI 访问(我没有这两个)或者太模糊而无法遵循。我也在为 Bazaar 使用 Windows GUI。

任何人都可以向我指出如何操作的指南/说明,或在此处发布吗?

从原始帖子开始编辑

自从我的原始帖子以来,我一直在尝试做几件事。可能是我误解了集市的工作方式。我想要的是在我的网络主机上拥有我的 php 文件等(我没有 ssh 访问权限),这样我自己和合作开发者就可以编辑和测试文件而不会互相覆盖。

我最初尝试通过“ftp://user:pass@server”在我的服务器上“开始一个新项目”,它说这是成功的。然后它提示“无法打开位置”错误提示“C:/ftp:/user:pass@server 不是品牌、结帐或存储库。 是否要将其作为虚拟存储库打开,搜索嵌套位置?”

当我点击是时,它给了我一个错误“无法更改为 C:/ftp:/user:pass@server - 关闭页面。”

如果我使用“打开现有位置”选项做同样的事情,它会给我同样的错误,除了之后 Bazaar GUI 挂起“无响应”并且需要被终止。

无论哪种方式,我都无法在 Bazaar 中与之交互。如果我创建一个本地项目然后推送,这一切似乎都有效。但是,如果我尝试提交更改以便推送它们,则会收到错误消息“Bazaar 遇到环境错误。如果这不是本地问题的结果,请在 https://bugs.launchpad.net/qbzr/+filebug 报告错误,包括此回溯和描述发生错误时您正在做什么。”节目详情显示“bzr:错误:无法确定您的姓名。 请使用“whoami”命令设置您的名字。 例如。 bzr whoami "你的名字""

【问题讨论】:

  • 您是否尝试过使用bzr push ftp://user:pass@server/absolute/path/to/somewhere 将分支推送到您的服务器?
  • 我正在为 Bazaar 使用 Windows GUI,据我所知,没有地方可以运行这样的命令。
  • 您没有在工具栏中看到一个大的Push 按钮吗?如果没有,则转到菜单 Bazaar |合作 |推送新修订...。它将弹出一个对话框,您可以在其中以我之前评论中的格式输入 FTP 位置。如果这行得通,那你就是金子。
  • 它似乎做了一些事情,也许我只是不知道它是如何工作的。但是,每当我按照你说的做,或者当我尝试打开 FTP 地址的位置时,Bazaar 都会抛出错误并崩溃。
  • 整个 Bazaar Explorer 崩溃了?不仅仅是推送窗口?它是否显示错误消息?请准确粘贴(可能在您的问题中进行编辑)。如果 GUI 没有提供更多信息,请打开 DOS 提示符,cd 进入您的项目目录并运行 bzr push 命令。这应该会给出一个我们可以调试的错误消息。

标签: linux ftp bazaar


【解决方案1】:

在提交修订之前,您需要设置名称和电子邮件地址。这些是提交中的重要元数据。您可以在 设置 | 中设置这些。配置 |用户配置菜单。在 General 选项卡上,输入 NameE-mail 字段。建议在公共项目中使用真实数据,以便查看您项目的其他人在有问题时可以与您联系。但它不一定是真实的。这是一次性初始设置。

下一步,我会做一个测试,以确保您确实可以通过 FTP 使用您的服务器,作为健全性检查:

  1. 在您的本地存储库中提交一些修订,以便您可以推送一些内容。可以是任何东西,没关系。
  2. 尝试推送到格式为:ftp://user:pass@server/absolute/path/to/somewhere 的 URL。在您帖子中的示例中,您写了 ftp://user:pass@server,但在此处有一个绝对路径很重要,就像在这个示例中一样。

如果由于某种原因无法使用 GUI 进行推送,请在命令行上尝试,例如:

bzr push ftp://user:pass@server/absolute/path/to/somewhere

这确实应该给出一个我们可以调试的错误消息。在这种情况下,请将输出粘贴到您的问题中。

更新

您在 cmets 中说您的姓名+电子邮件设置有问题,更改该设置解决了问题。很高兴知道那里到底有什么问题。

关于bzr push 到 FTP 服务器,我仔细检查过,这永远不会在服务器上创建文件。来自bzr push -h

目标分支不会填充其工作树,因为这 既昂贵又不支持远程文件系统。

一些智能服务器或协议可能在未来放置工作树。

通过 FTP,它是一个“哑”的服务器,所以它肯定不会把文件放在那里,只有 .bzr 目录,它是存储库和分支数据。如果你想把文件放在那里,恐怕你必须手动复制。有一个相关的 bzr-push-and-update 插件,但它需要 ssh 访问,这不是你的情况。

【讨论】:

  • 我已经设置了用户名和电子邮件,就是这样。
  • 让我直截了当地说:GUI 不允许您提交,声称您没有设置您的姓名+电子邮件,即使您已经这样做了。如果您检查设置菜单,您在那里看到您的姓名+电子邮件吗?如果您在命令行上运行bzr whoami 命令,您会得到正确的结果吗?如果您使用命令行提交,它有效吗? bzr commit -m "test commit"
  • 没错。 whoami 也失败了。我尝试将凭据重置为我的另一封电子邮件和我的姓名,现在它可以工作了。推送文件后,我可以/如何通过浏览器访问文件?好像不行。
  • 如果您推送到可从 Web 服务器访问的路径,那么该路径应该是可见的,但只有 Bazaar 在您推送时创建工作目录。我不记得它在通过 FTP 推送时是否可以做到这一点。使用 FTP 客户端检查文件在推送后是否存在,或者只有 .bzr 目录存在。
  • 只有.bzr 目录存在,是否意味着我必须手动上传文件?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-01-28
  • 2016-09-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-04-28
相关资源
最近更新 更多