Академический Документы
Профессиональный Документы
Культура Документы
2-Configurando Git
2.1 Archivo /etc/gitconfig ---> git config --system (para todos los usuario)
2.2 Archivo ~/.gitconfig o ~/.config/git/config ---> git config --global (usuario actual)
3.2 Archivo config en el directorio Git (.git/config) archivo especifico del repo que se este usando
3-Identidad
$git config --global user.name "nombre"
$git config --global user.email
4-Editor
$git config --global core.editor nano
5-Comprobando la configuracion
$git config --list
$git config user.name (configuracion de una clave en concreto)
6-Obteniendo ayuda
7-Obteniendo un repositorio
Dos opciones tomar proyecto o directorio existente e importarlo en Git, o bien clonar un repositorio
existente en Git desde otro servidor
$git init
Crea un subdirectorio .git (donde se guarda la informacion necesaria para seguimiento y la
estructura del repo )
Nota:todavia no hay nada en el proyecto que este bajo seguimiento
Nota: <mylibgit> es opcional si queremos que el directorio se llame como ese parametro
Esto crea un directorio llamado libgit2, inicializa el directorio .git en su interior y descarga toda la
informacion de ese repo y saca una copia de trabajo de la ultima versión.
Cada archivo del repo puede tener dos estados: rastreado y sin rastrear.Los primeros son aquellos
que estaban en la ultima instantanea del proyecto, puede estar sin modificar, modificados y
preparados, los segundos son todos los demas ,los archivos del directorio que no estaban en la
ultima instantanea y no estan en el area de preparacion
Cuando se clona por primera vez un repo todos los archivos estan rastreados y sin
modificar.Mientras se editan archivos , git los ve como modificados pues han sido cambiados desde
el ultimo commit, luego se preparan estos archivos modificados y finalmente se confirman todos los
cambios preparados , y se repite el ciclo
valores:
-untracked files
-changes to be commited
-changes not staged for commit
Se añade un archivo nuevo al proyecto (no estaba en la anterior instantanea), en este ejemplo
README
Como se ve git add , se utiliza para multiples propositos (rastrear, preparar,marcar como resuelto en
conflictos por combinacion),se entiende como añadir este contenido a la proxima confirmación.
Si ejecutamos git add sobre un archivo modificado para preparlo,pero posteriormente modificamos
el archivo por algo,deberemos ejecutar nuevamente git add sobre este archivo para que vuelva a
estar preparado para confirmar los cambios sobre el.
11-Estado abreviado
$git status -s
$git status –short
12-Ignorar archivos
$ cat .gitignore
*.[oa]
*~
$ git diff
$git diff sin mas muetra lo que se ha cambiado pero aun no se ha preparado, es decir compara con
lo que esta en el directorio de trabajo con lo que esta en el area de preparacion, muestra los cambios
que se han hecho pero que aun no se han preparado
$git commit
$git commit -v (en el editor se veran que cambios se estan confirmando)
$git commit -m “Mensaje asociado al commit”
Indica que rama se ha confirmado, que checksum tiene el commit , cuantos archivos han cambiado
y estadisticas sobre las lineas añadidas y eliminadas en el commit
$rm PROJECTS.md
$git status
si se hace así , se elimina el fichero del directorio de trabajo ,pero aparecerá en la sección “changes
not staged for commit” , esto es sin preparar en la salida de git status
Es similar a :
$mv README.md README
$git rm README.md
$git add README
$git log
$git log -p -2
añade estadisticas
Ej:
git commit -m 'initial commit'
git add forgotten_file
git commit –amend
En este caso se nos olvido preparar el forgotten_file en el commit de arriba , a efectos de hacerlo asi
el segundo commit sobreescribe al primero
Ej:preparamos dos ficheros , pero solo queriamos meter uno en el area de preparacion
como lo sacamos
Previamente hemos hecho
$git add .
$git status
Si hemos clonado un repo con git clone [url] , y luego vamos al directorio en cuestion donde se ha
descargado el proyecto.
Inspeccionar un remoto
$git remote show [nombre-remoto]
21-Etiquetas
Crear etiquetas
git utiliza dos tipos de etiquetas: ligeras y anotadas
una etiqueta ligera es muy parecido a una rama que no cambia, podría asimilarse a un puntero a un
commit especifico, sin embargo las etiquetas anotadas se guardan en la base de datos de git como
objetos enteros,se recomienda que se usen etiquetas anotadas,si se quiere guardar toda la
informacion asociada.
Etiqueta anotadas
$git tag -a v1.4 -m 'my version 1.4'
para ver la informacion
$git show
Etiquetas ligeras
$git tag v1.4-lw , no se le pasan parametros -a -s -m
$git show
Etiquetado tardio
Se puede etiquetar commits mucho tiempo despues de haberlos hecho
Ej:
$git log –pretty=oneline
9fceb02d0ae598e95dc970b74767f19372d61af8 updated rakefile
$git tag -a v1.2 9fce....
$git tag
$git show v1.2
Compartir Etiquetas
Por defecto git push no transfiere las etiquetas a los servidores remotos,hay que enviarlas de forma
explicita
22-Alias
Se usan para abreviar comandos y no tener que escribirlos enteros
Ej
git config –global alias.co checkout
git config –global alias.br branch
git config –global alias.ci commit
git config –global alias.st status
Enlaces:
http://codigolinea.com/2012/08/30/empezando-con-git-y-github/
Enlaces:
https://lineaporlinea.wordpress.com/2013/05/13/comenzando-con-git-y-github/
http://conociendogithub.readthedocs.io/en/latest/data/dinamica-de-uso/#crear-una-cuenta