问题描述
在寻找一个能够明确描述将“部署包”(因为没有更准确/技术性的术语)从一个部署环境推广到另一个部署环境的过程的术语。这个过程是从开发环境向生产环境(或其他可能存在的环境)推进的,涉及发布管理的背景。在这种情况下,每个环境都有自己的特定目的(开发、集成测试、用户验收测试、暂存、生产等),它们按照一个定义好的、通常相同的顺序(重要性或质量)相继出现。
用户之前以为这个过程叫做“staging”(因为在多个项目和团队中,用户在这个确切的上下文中听到了这个术语),但后来的研究,特别是这个讨论:What is, or could be the formal and/or officially established definition of a “stage”?,证明这个理解是错误的。
用户猜测,最终可能会使用“deployment”(部署)这个术语,但用户想要进一步区分“将源代码部署到服务器”的过程和“根据某个特定过程移动到不同环境”的过程(例如,端到端测试成功,由发布经理审核等)。尤其是因为每个过程可能有不同的(实现方式)。
更广泛地说,用户想要澄清DevOps术语中的一些歧义,请纠正用户在问题中可能存在的任何错误假设。
解决方案
以下操作可能受到版本差异影响,请在实施前备份并谨慎操作。
在软件开发和发布过程中,从一个部署环境推广代码到另一个环境有许多不同的术语被使用。这些术语在不同的团队和组织中可能会有所不同,但总体来说,它们都试图描述同一个过程:将代码从一个环境移到另一个环境,以进行不同层次的测试、审查和准备,最终达到生产环境。
以下是一些在这个上下文中常用的术语:
部署(Deploy):这是一个广泛使用的术语,用于描述将代码从一个环境移动到另一个环境的过程。它强调的是代码的物理移动和配置的更改。
推广(Promote):这个术语强调的是代码的进步和升级,从一个较低的环境(如开发或测试)升级到一个更高的环境(如生产)。
发布(Release):这个术语通常用于描述将代码从最后一个测试环境(如暂存环境)移动到生产环境的过程。它强调的是代码的正式发布和准备就绪。
传播(Propagate):这个术语强调代码的传递和传播,从一个环境传递到另一个环境,通常是逐步的过程。
移动(Move):这个术语比较通用,用于描述代码从一个环境移到另一个环境的过程。
在您的组织或团队中,您可以根据您的需求选择并明确使用这些术语,以便在交流时保持一致性。无论您选择使用哪个术语,最重要的是在描述过程时要清楚地表达意图,以便其他人能够理解。
总之,在DevOps领域,术语可能会因上下文和团队而异,但这些术语都可以用来描述将代码从一个环境移动到另一个环境的过程,以便进行不同级别的测试、审查和最终发布。
回复1中提到,术语在不同团队中可能会互换使用。在您的组织中,尽量保持术语的一致性,以消除可能的混淆和误解。例如,可以使用“deploy”术语来表示在不同环境之间移动,但在涉及到生产环境时使用“release”术语,以强调这是整个流程的最终步骤。
无论您最终选择使用哪个术语,都要确保在文档和交流中清楚地解释其含义,以便团队成员能够正确理解您的意图。
请记住,术语可能会根据文化、团队和上下文而有所不同,因此您可以根据您的需求进行适当的调整和定义。
如果您正在为德语文档编写,而且希望使用更加技术性的术语,您可以考虑使用“deploy”(部署)这个术语的德语翻译,例如“Bereitstellen”或“Deployen”。这些术语在技术环境中可能更为常见和被接受,而且不需要翻译。
请记住,在术语选择方面,最重要的是确保您的团队能够清楚地理解和沟通,以