[Git] Comandos Rápidos para casos puntuales




  • Obtener la version que estoy usando

    git --version
    
    git version 2.14.3.windows.1
    

  • Ver y editar user/email

    #ver nombre de usuario
    git config user.name
    #ver email
    git config user.email
    
    #crear todas las propiedades de config
    git config --list
    
    #crear nombre de usuario
    git config --global user.name "<nombre>"
    
    #crear email
    git config --global user.email "<email>"
    

  • Ver y crear alias

    #ver lista de alias
    git config --get-regexp alias
    
    #crear alias
    git config --global alias.<nombre> "git <comando>"
    
    #crear alias del alias
    git config --global alias.alias "config --get-regexp ^alias\."
    

  • Crear branch local y pushearlo al remoto

    #crear branch y cambiarse al el
    git branch <nombre_branch> && git branch <nombre_branch>
    
    git push --set-upstream <remote_name> <nombre_branch>
    

  • Agregar y cambiar la url del repositorio remoto

    #para ver el repositorio remoto
    git remote -v
    #Cambiar el repositorio remoto existente
    git remote set-url <remote_name> <url>
    #Agregar un nuevo repositorio
    git remote add <remote_name> <url>
    

  • Clonar un solo branch remoto especifico

    git clone -b <branch_name> <url>
    #para version anteriores a 1.7.10
    git clone -b --single-branch <branch_name> <url>
    

  • Realizar un merge ignorando los espacios en blancos

    git merge -Xignore-all-space
    #O siendo mas espeficicos
    git merge -Xignore-space-change
    

  • Moverse a otro branch remoto especifico

    git fetch
    git checkout test
    #Multiples remotos
    git fetch <remote_name>
    git checkout -b <branch_name> <remote_name>/<branch_name>
    

  • Generar tags y pushearlos

    #ver tags locales
    git tag
    #crear un nuevo tag
    git tag -a <nombre_tag> -m "comentario"
    #enviar el tag al remoto
    git push <remote_name> --tags
    

  • Borrar un branch local y remoto

    git branch --delete <branch_name>
    git push <remote_name> --delete <branch_name>
    

  • Descartar cambios modificados o agregados al staged index

    #descartar cambios not staged
    git checkout -- .
    #descartar cambios to be committed
     git reset --hard
    

  • Borrar un commit local y remoto

    #hacer de cuenta que aca no paso nada
    git reset HEAD~1
    #no perder los cambios
    git reset HEAD^ --soft
    
    #borrar el commit en el remoto
    git reset HEAD^ --hard && git push <remote_name> -f
    
    #alt + 94 = ^  alt + 126 = ~