

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 常见问题解答
<a name="faq"></a>

## 有哪些关键指标表明我的部署流程并非完全 CI/CD？
<a name="faq-key-indicators"></a>

最常见的指标是管线中有多个存储库分支代表不同的环境。完整 CI/CD 流程中的存储库使用基于主干的工作流程，其中一个分支充当该存储库部署的单一事实来源。有关更多信息，请参阅 [基于主干的方法](fully-cicd-process-differences.md#trunk-based-approach)。其他指标包括除简单的执行或不执行决策以外的手动部署步骤、使用修补程序和计划发布。

## 如果我想使用完整的 CI/CD 流程，但仍想在特定时间点安排某些功能的发布，该怎么办？
<a name="faq-scheduled-releases"></a>

这通常需要使用功能标志来完成。在此流程中，部署仍会持续进行，但会在代码中使用条件闭包来隐藏某些功能，直到需要发布时才显示。

## 如果我的部署流程中的某些步骤无法自动化，该怎么办？
<a name="faq-automated-steps"></a>

完整 CI/CD 管道的目标之一是最大限度地减少对手动流程的需求，但肯定存在可能需要手动流程的潜在用例。实际上，查阅应用程序日志等只读流程通常可在生产环境中完成，风险极低。但是，强烈建议您将生产时的手动写入操作视为绝对最后使用的手段。

## 如果我的技术人员对传统工作流程比对完整 CI/CD 流程更满意，该怎么办？
<a name="faq-resistance-to-change"></a>

技术人员通常会抵制重大变更，尤其是当曾经是最佳实践的做法被更新的方法取代时。技术发展日新月异，改进方案层出不穷。尽管保持一定的怀疑精神对技术人员来说是一种优良品质，但对变更持开放态度也同样重要。面对持怀疑态度的员工时，不要操之过急，因为他们需要在系统变更实施之前对其进行管理。关键在于防止持怀疑态度的人员永远固步自封。

## 如果我的环境有多个账户怎么办？ 我还能使用完整的 CI/CD 流程吗？
<a name="faq-multiple-accounts"></a>

是的，实际上，建议为每个环境使用单独的帐户。 有关在不同账户中激活阶段的管道的更多信息，请参阅[在中 CodePipeline 创建使用其他 AWS 账户账户资源的管道](https://docs.aws.amazon.com/codepipeline/latest/userguide/pipelines-create-cross-account.html)。