8 de enero de 2013

Git

Git es un software para el control de versiones, asi como existe svn, pero este esta mas pensado para que el programador realicé trabajos, suba sus proyectos y los comparta en repositorios publicos, yo personalmente uso github, aunque actualmente en mi trabajo usamos bitbucket que tambien usa git como controlador de versiones :)
aqui les dejo algunos de los comandos basicos para empezar con GIT.



mkdir mi_repo
cd mi_repo
git init
git add . 
git commit -m "my first commit"
Estos son los comandos principales, para inicializar un repositorio local.

git clone
Este comando nos sirve para clonar un proyecto o crear una copia local nueva.

git branch
Cuando creamos ramas en nuestro repositorio y deseamos saber en que rama nos encontramos.

git checkout -b nuestra_nueva_rama 
Con este comando creamos una nueva rama en nuestro repositorio, el cual debemos completar obvio con el nombre de nuestra rama.

git checkout nuestra_rama
Este comando lo usamos cuando estamos en determinada rama y queremos cambiarnos a otra.

git stash
Con este comando guardamos en memoria los cambios que hicimos a nuestros archivos.

git stash pop
Con este comando recuperamos los cambios de los archivos que guardamos en memoria.

git checkout .
Este comando vease atentamente el "." con un espació despues del checkout, nos sirve para regresar a la versión actual de una rama, si es que modificamos alguno de sus archivos.

git status
Muestra el estatus de nuestros archivos, en caso de que exista un archivo nuevo o modificado este nos lo indicara.

git add
Con este comando agregamos archivos, listos para guardar, podemos usar git add "." punto sin los parentesis para agregar todos los archivos de la carpeta en la que estemos.

git commit -m 
Este comando nos permite guardar nuestros cambios, LOCALMENTE es una ventaja que tiene GIT sobre SVN ;), el simbolo -m representa al mensaje con el cual se describira el commit.

un atajo para agregar y hacer commit al mismo tiempo
git commit -a -m

git pull origin nombre_de_rama_master
Nos sirve para actualizar o sincronizar nuestra rama con la rama master, es muy importante esta sincronizados con la rama principal antes de subir algun cambio al servidor.

git merge
Para mezclar cambios de dev, master o alguna rama, sea el caso en donde estemos trabajando.

git push origin master
Este es el comando ejecutor, practicamente con este comando ya subimos nuestros archivos a la rama master, al servidor.

Algunos de los tips que he aprendido durante el uso de git como controlador de versiones, es que siempre debes crear una rama dev o como le quieras llamar, crear respectivos branch que indiquen que issue estas atendiendo para el final mezclar todo en dev y poder mandar todo a master, sin que despues tengas problemas con tus archivos :)

Retomando el blog!! :)