Я использую GitHub Actions для CI/CD и использую actions/checkout@v4
для проверки текущего кода ветки в задании действия. Во время разработки я создаю функциональную ветку из ветки develop
, а затем создаю PR для слияния с веткой develop
.
В моем задании сборки мне нужно сравнить изменения между функциональной ветвью и ветвью разработки, поэтому мне нужно получить ветку разработки, как показано в файле рабочего процесса ниже:
steps:
- uses: actions/checkout@v4
- name: Fetch base branch
run: |
git fetch origin ${{ github.base_ref }}
...
Интересно то, что команде actions/checkout@v4
потребовалось 3 секунды, а команде git fetch origin develop
— 30 секунд. Обе ветки в основном похожи, за исключением нескольких измененных файлов. Интересно, почему при проверке кода все сильно отличается. Выполняют ли GitHub Actions некоторую оптимизацию в текущей ветке?
По умолчанию в действии оформления заказа используется git fetch --depth=1
.