Trabajando con Git 馃悪

Git es un software de control de versiones distribuido, mundialmente utilizado por su eficiencia. Para una mejor explicaci贸n de qu茅 es git y para qu茅 sirve? ... recomiendo ver las guias publicadas por Makigas a trav茅s de su canal de Youtube Makigas - Tutorial de Git

Mi intenci贸n en este post, es resumir mi experiencia al utilizar Git desde Gnu-Linux Fedora, al final hago referencia a algunas de las URLs que me han ayudado en este aprendizaje.

Instalaci贸n

  • yum install git
  • git --version

Creaci贸n de llaves Cliente

Crear llaves SSH a traves del comando:
* ssh-keygen
* Poner una contrase帽a
* eval $(ssh-agent -s)
* ssh-add

Configuraci贸n Cliente Git

  • git config --global user.name nombreAsignado
  • git config --global user.email mailAsignado
  • git config --global core.editor "vim"

Configuraci贸n por repositorio

  • git config user.name "neogeoakb"
  • git config user.email "neogeob@akb.soy"

Para los que necesiten colorear git log y git diff en la terminal, utilizar:
* git config --global core.pager "less -R"

Para visualizar las configuraciones actuales del cliente Git:
* git config --list

Para verificar las configuraciones podemos ir al archivo .gitconfig:

[usuario@localhost ~]$ cat .gitconfig
[user]
    name = ferchoPortal
        email = neogeo@akb.soy

[core]
        editor = vim

Comandos Basicos

init

Para crear un repositorio Git.
* git init

status

Para ver el estado actual.
* git status

clone

Para clonar un proyecto en GitHub.
* git clone html_GitHub

Para clonar un proyecto git de forma local.
* git clone akb.soy/.git ./blog.akb.soy/
* git clone -b my-branch git@github.com:user/myproject.git

ref_gitClone_01

add

Para agregar archivos al index (Stagin).
* git add nombreArchivo

reset

Para reversar el git add debemos utilizar:
* git reset nombreArchivo

ref_gitReset_01
ref_gitReset_02

rm

Para eliminar un archivo.
* git rm file1.txt
* git commit -m "remove file1.txt"

Pero si desea eliminar el archivo s贸lo del repositorio de Git y no eliminarlo del sistema de archivos, utilizar:
* git rm --cached file1.txt

branch

Para ver la rama actual de Git.
* git branch

Para crear una nueva rama.
* git branch nombreDeLaRama

Para mostrar todas las ramas.
* git branch --all

Para borrar una rama en nuestro repositorio local.
* git branch -d nombre_rama

Para forzar el borrado de una rama en nuestro repositorio local.
* git branch -D nombre_rama

Para borrar una rama en nuestro repositorio Remoto.
* git push origin :nombre-rama
* git push origin --delete nombre-rama

checkout

Para pasar a trabaja con esa rama.
* git checkout nombreDeLaRama

Para crear una rama y trabajar desde ella Directamente.
* git checkout -b nombreDeLaRama

Para crear una rama con el contenido de un repositorio remoto:
* git checkout -b private_cv origin/private_cv

ref_gitCheckout_01

merge

Para fusionar ramas dentro de la rama activa.
* git checkout master
* git diff master test_blog_01
* git merge test_blog_01

commit

Para guardar en git los cambios de uno o varios archivos de forma local.
git commit -m "Texto que identifique por que se hizo el commit"

Para agregar un nuevo cambio sin que se registre otro commit.
* git commit --amend

Para que el commit se replique en los repositorios remotos debemos ejecutar:
* git push --force

Para modificar el mensaje del commit sin necesidad de crear otro commit.
* git commit -m "Mensaje corregido" --amend

ref_gitCommit_01

log

Para visualizar los commit realizados anteriormente.
* git log --oneline --decorate --all --graph

diff

Para visualizar las diferencias entre archivos versionados.
* git diff
* git diff nombreArchivo
* git diff branch-comparar branch-actual nombreArchivo

ref_gitDiff_01

remote

Para crear repositorios remotos.
* git remote add origin git@git.akb.soy:py2_resumen_cv.git
* git remote add akb git@git.akb.soy:resumen_cv.git

Para visualizar los repositorios remotos.
* git remote -v
* git remote -v --all

Para eliminar repositorios remotos.
* git remote rm origin

push

Para enviar tus cambios locales hacia respositorios remotos.
* git push origin master
* git push akb --all

pull

Para recibir los ultimos cambios almacenados en los repositorios remotos.
* git pull origin master
* git pull --rebase --stat origin master


URLs

git-puesto-en-practica
mini-tutorial-y-chuleta-de-comandos-git
git-uso-dasdo
git-carlotssanchezperez-01
git-carlotssanchezperez-01
git-vogella
EGit-vogella
git-rogerdudler
git-jelcaf
colorear-git-log-y-git-diff


Show Comments