【问题标题】:How to use git and deployment platform to deploy code changes without commits如何使用 git 和部署平台在不提交的情况下部署代码更改
【发布时间】:2015-09-12 11:53:26
【问题描述】:

我们将 GIT 存储库与 DeployBot.com(部署平台)和 FTP 结合使用。 我们的代码库中的代码是按主题分支组织的。

为了将代码部署到服务器,我们只需提交最新更改,将其与 master 合并(该分支用于部署),部署平台会传输修改后的文件。上述方法在 90% 的情况下都非常有效。

但是,有时我们需要在服务器上快速测试我们的代码(在开发环境中不可能这样做),但我们不想每次都提交这些小的更改以保持 repo 历史的紧凑和干净。我们也不想使用 FTP 直接修改文件而不提交文件,因为修改后的文件是我们无法控制的。

我想知道您是否有同样的问题,以及您使用什么方法来克服它。最初,我正在考虑维护一个特殊的分支,该分支可用于保留所有这些“快速”的一次性提交,但我发现它并不优雅/敏捷,而且很成问题。

高度赞赏所有想法。非常感谢!

【问题讨论】:

    标签: git deployment ftp web-deployment git-branch


    【解决方案1】:

    “但是,有时我们需要在服务器上快速测试我们的代码(在开发环境中不可能这样做)” - 这就是你的问题,你应该让你的开发环境尽可能具有代表性,因此您可以在那里测试(几乎)所有内容。

    另一方面,我认为小提交没有太大的危害。如果您在开发环境中尽可能多地对其进行测试,并且您认为您所做的更改可能会奏效,那么我会提交它。

    但另一种可能性是设置从分叉部署的可能性。如果您能够从分支中的分支进行部署,则可以从您的开发分支进行测试部署并对其进行测试。测试完成后,您可以通过从主存储库发布版本来恢复环境。

    由于您将所有更改都放在一个单独的、未合并的分支中,您仍然可以完全删除该分支,或者将各种提交的更改收集到一个新分支中的单个提交中。

    所以我认为这些是您的选择,尽管我认为这是一个丑陋的工作流程。我宁愿修复开发/测试环境并学会欣赏小提交。

    【讨论】:

    • 谢谢 - 这是一个有趣的观点。我同意在理想情况下,测试环境与生产环境非常接近——如果不相同的话。回复:这些小提交 - 也许,简单地标记它们是值得的,例如“TEST - blah blah blah”,因此可以很容易地将它们与更“官方”的提交区分开来。
    • 这取决于您,但我个人认为提交消息应该描述更改。软件一直在维护,在某种程度上,我认为每次更改都是一次测试。 ;) 毕竟,如果测试成功,更改将进入生产代码,稍后您会想知道为什么提交被标记为“测试”。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-02-23
    • 2015-03-29
    • 2022-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多