cicd 管道中 git 结帐操作的用途是什么

what's the use of git checkout action in a cicd pipeline

我发现在许多 CICD 管道中,例如 Azure DevOps 管道或 GitHub 操作,总是有一个结帐分支操作。 Azure DevOps 管道示例

  jobs: 
    - job: test
      displayName: Integration Test
      steps:
        - checkout: self
          lfs: true
    ...

for GitHub 动作示例

on: [push]

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      # checkout the repo
    - uses: actions/checkout@master
    - uses: Azure/login@v1
      with:
        creds: ${{ secrets.AZURE_CREDENTIALS }} 
    ...

这些结帐有什么用?要清理 CICD 管道的分支?

GitHub 或其他任何地方的 CI/CD 管道,运行 在一台名为 运行ner 的特殊机器上。例如,在 GitHub 的情况下,运行ner 是由 GitHub 托管的虚拟机,安装了 GitHub Actions 运行ner 应用程序。任何 CI/CD 管道的最终目标是 运行 对存储库文件执行一些命令。那么这台新机器如何从您的存储库中获得 codes/files?

将文件从存储库安全地复制到 运行ner 的行为称为检查。这是必不可少的一步,而且通常是首要步骤(首先完成)。这就是为什么在任何 CI/CD 管道中,您会在前几行中看到他们检查存储库。

有关 GitHub 运行 用户的更多信息可用 here