Skip to content

Ignorar videos .mp4 y medios de documentales en .gitignore #235

Ignorar videos .mp4 y medios de documentales en .gitignore

Ignorar videos .mp4 y medios de documentales en .gitignore #235

Workflow file for this run

name: Calidad del repositorio
on:
pull_request:
push:
branches: [main]
jobs:
colision-mayusculas:
name: Rutas duplicadas solo por mayúsculas
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Detectar colisiones (rompen clones en macOS/Windows)
run: |
DUPS=$(git ls-files | sort -f | uniq -Di || true)
if [ -n "$DUPS" ]; then
echo "::error::Rutas que difieren solo en mayúsculas/minúsculas:"
echo "$DUPS"
exit 1
fi
echo "✅ Sin colisiones de mayúsculas"
rutas-windows:
name: Rutas válidas en Windows
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Detectar caracteres o nombres inválidos (rompen clones en Windows)
run: |
# Caracteres prohibidos en NTFS (< > : " | ? * y de control) o
# componentes que terminan en espacio/punto o empiezan con espacio.
MALAS=$(git ls-files -z | tr '\0' '\n' | grep -P '[<>:"|?*\x01-\x1f]|[ .](/|$)|(^|/) ' || true)
if [ -n "$MALAS" ]; then
echo "::error::Rutas inválidas en Windows (renombra la carpeta por el tema, sin ':' ni comillas):"
echo "$MALAS"
exit 1
fi
echo "✅ Rutas válidas en Windows"
enlaces-locales:
name: Enlaces internos de Markdown
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Verificar enlaces relativos (solo locales, sin red)
uses: lycheeverse/lychee-action@v2
with:
args: --offline --no-progress "**/*.md"
# Solo advertencia: el material histórico tiene enlaces legados
fail: false