oh-my-git/levels/low-level/ref-create
2024-07-11 10:38:19 +02:00

42 lines
No EOL
1.3 KiB
Text

[descripción]
¡Echemos un vistazo a las "refs" (abreviatura de "referencias")! ¡Las referencias no son objetos, sino *punteros* muy simples a objetos! Pueden ayudarle a realizar un seguimiento de qué está y dónde.
Puede crear o actualizar una referencia con
git update-ref refs/<nombre de referencia> <nuevo valor>
¡Asegúrate de comenzar siempre el nombre de un árbitro con "refs/"! Esa es una convención que ayuda a Git a encontrar todas las referencias que creas. Si olvida "refs/", no verá la referencia.
¡Crea referencias que apunten a todos los objetos en este repositorio!
[configuración]
eco hola > hola
eco mundo > mundo
BLOB1=$(git hash-object -w hola)
BLOB2=$(git hash-object -w mundo)
git agregar.
ÁRBOL=$(git escribir-árbol)
COMMIT=$(git commit-tree $TREE -m "Compromiso inicial")
[objetivo de configuración]
eco hola > hola
eco mundo > mundo
BLOB1=$(git hash-object -w hola)
BLOB2=$(git hash-object -w mundo)
git agregar.
ÁRBOL=$(git escribir-árbol)
COMMIT=$(git commit-tree $TREE -m "Compromiso inicial")
git actualización-ref refs/a $BLOB1
git actualización-ref refs/b $BLOB2
git actualización-ref refs/c $ÁRBOL
git actualización-ref refs/d $COMMIT
[ganar]
OBJETOS=$(git cat-file --batch-check='%(nombre de objeto)' --batch-all-objects | sort)
REF_TARGETS=$(git show-ref -s | ordenar | uniq)
prueba "$OBJECTS" = "$REF_TARGETS"