GitHub 操作中的“git log”日期不正确

jjm*_*elo 3 git github-actions

我正在使用此脚本生成带有提交日期的文件

cat .github/workflows/header.md > "COVID 19/fechas.md"
git ls-tree -r --name-only HEAD COVID\ 19/*.csv | while read filename; do
    date=$(git log -1 --format="%aD" -- "$filename")
    echo "| $date  | $filename |" >>  "COVID 19/fechas.md"
done
git config --global user.email "jjmerelo@gmail.com"
git config --global user.name "FechaActionBot"
git add "COVID 19/fechas.md"
git commit -m "Fichero de fechas generado"
Run Code Online (Sandbox Code Playgroud)

在此GitHub Action中,它检查代码并作为脚本在上面运行。

无论我使用什么格式(提交者或作者日期),我都会得到相同的结果,它显示所有文件的相同日期(当前日期)。

jjm*_*elo 5

默认情况下,checkout操作执行浅克隆。如果您想访问真实的提交日期(而不是浅克隆创建的幽灵提交的日期),则需要将其配置为深克隆,如下所示:

name: genera fechas
on:
  push:
    paths:
    - '**.csv'

jobs:
  genera_fechas:
    runs-on: ubuntu-latest
    name: Genera CSV
    steps:
      - name: checkout
        uses: actions/checkout@v2
        with:
          fetch-depth: '0'
      - name: Fechas
        run: .github/workflows/dates.sh
      - name: Check in
        uses: ad-m/github-push-action@master
        with:
          github_token: ${{ secrets.GITHUB_TOKEN }}

Run Code Online (Sandbox Code Playgroud)