Git intermedio — nueva edición · Encontrar el primer commit defectuoso

Reto 1: Encontrar el primer commit defectuoso

Puedes preparar tu solución. .

Git / reto

Localiza una regresión

Aplicar edición cambia el archivo; git add lo prepara.

Historial de commits

0000007Versión 7HEAD → main0000006Versión 60000005Versión 50000004Versión 40000003Versión 30000002Versión 20000001Commit inicial

Las líneas conectan los commits con sus padres. Los commits que ya no tienen una referencia también permanecen visibles en este laboratorio.

  1. 0000007: Versión 7; HEAD → main
  2. 0000006: Versión 6;
  3. 0000005: Versión 5;
  4. 0000004: Versión 4;
  5. 0000003: Versión 3;
  6. 0000002: Versión 2;
  7. 0000001: Commit inicial;
Comparar trabajo, índice y HEAD

Trabajo

# Mi proyecto

Índice (staging)

# Mi proyecto

HEAD

# Mi proyecto

TERMINAL

Sesión local preparada. Escribe help para consultar los comandos de este tema.

Construye tu solución, paso a paso

Inicia sesión para guardar la puntuación. Puedes practicar sin iniciar sesión.

Comandos disponibles y límites
git --version · git config --global <clave> [valor]
git init · git status
git add <archivo | .> · git commit -m "mensaje" · git log
git log --oneline · git switch <rama> (antes: checkout)
git restore [--staged] <archivo> · git commit --amend [-m "mensaje" | --no-edit]
git switch --detach <commit> · HEAD · HEAD~1
git diff [--staged | <commit> <commit>]
git remote [-v] · git remote add <nombre> <URL> · git remote get-url <nombre> · git remote set-url <nombre> <URL>
git clone <URL>
git push [-u] <remoto> <rama>
ssh-keygen -t ed25519 · ssh -T git@github.com (ficticios)
git branch [nombre] · git branch -m <nombre> · git branch -d <rama> · git switch -c <rama>
git merge [--ff-only] <rama>
git merge --no-ff <rama> · git log --graph --all --decorate
git merge --abort · editar conflicto, git add y git commit -m "mensaje"
git config --global alias.st status · git st
git tag [nombre] · git tag -a <nombre> -m "mensaje" · git tag -n · git push origin <tag>
git reset --soft|--mixed|--hard <commit> · git reflog
git stash push [-u] [-m "mensaje"] · list · show · apply · pop · drop
git rebase <rama> · git rebase --continue · git rebase --abort
git grep [-n] <texto> [revisión]
git rebase -i <base> (editar lista) · git merge --squash <rama>
git bisect start · good [commit] · bad [commit] · reset
help · clear

Sesión en memoria: recargar descarta la práctica. Doscientas acciones como máximo. Dos archivos editables de hasta 250 líneas. Diez ramas como máximo. Diez entradas de stash como máximo. El modelo no ejecuta comandos reales ni realiza conexiones externas. diff muestra contenido anterior y posterior por archivo. grep busca texto literal. La lista interactiva conserva el orden y agrupa todos los commits seleccionados.