Estos son los comandos utilizados en esta sección
- git config
- git clone
- git status
- git add
- git commit
- git rm
- git mv
- git log
- Committed: La información del archivo esta almacenada en forma segura en la database local.
- Modified: El archivo sufrió cambios locales pero no fue "comiteado" hasta el momento.
- Staged: Se ha marcado el archivo como modificado y pronto para el commit de la próxima snapshoot.
- /etc/gitconfig: Contiene los valores de todos los usuarios y todos los repositorios; para acceder a este recurso se hace git config --system (lectura y escritura)
- ~/.gitconfig file: Contiene la información del usuario local; se accede con git config --global.
- .git/config: especifica la información particular de ese repositorio.
Configurar quien soy yo
Lo primero que debemos hacer una vez instalado GIT (sudo apt-get install git) es setear quien somos; esto lo hacemos con el comando git config --global para no tener que hacerlo nuevamente (notar el --global):
git config --global user.name "Juan Perez"
git config --global user.email "juan.perez@email.com"
Configuración de herramientas
Lo básico, el editor y el diff tool.
git config --global core.editor vim
git config --global merge.tool vimdiff
Una (extensa) lista de opciones se puede encontrar haciendo git config --help; un resumen del seteo de opciones se puede encontrar haciendo git config --list o en su defecto si solo se quiere cierta propiedad, se hace git config user.name
Hacer un
Para eso tan solo necesitamos tener la url del repo y hacer un git clone
git clone git://github.com/schacon/grit.git
| Imagen extraída de: http://progit.org/book/ch2-2.html |
- git log --graph - muestra el log como un grafo
- git log --reverse - invierte la salida del log
- git log -4 - limita la salida a n logs
- git log --since={--since, --after, --until, --before} {2.weeks, "2008-10-10", etc}
- git log --author=User - Que el autor coincida con User.
- git log --committer=User - Que el committer coincida con User.
- git log --help
- git log -p - muestra el diff de cada commit
- git log --stat - muestra la lista de archivos modificados en cada commit
- git log --pretty=OPCION - muestra el output de según la forma predefinida
Opciones - oneline - muestra cada commit (comentario del) en una sola línea
- short - la salida pero resumida
- full
- fuller
- format: "%h - %an, %ar : %s"
Etiquetas de formateo
- %H - Commit hash
- %h - Abbreviated commit hash
- %T - Tree hash
- %t - Abbreviated tree hash
- %P - Parent hashes
- %p - Abbreviated parent hashes
- %an - Author name
- %ae - Author e-mail
- %ad - Author date (format respects the –date= option)
- %ar - Author date, relative
- %cn - Committer name
- %ce - Committer email
- %cd - Committer date
- %cr - Committer date, relative
- %s - Subject