Git commands

  • Get a clean local copy of my GitHub repository with read & write access:
    git clone git@github.com:kdeldycke/scripts.git
    
  • Switch to another branch:
    git checkout another_branch
    
  • Set the current repository in the state it was at commit 1234567:
    git checkout 1234567
    
  • Get the current commit number:
    git rev-parse HEAD
    
  • Get a sorted list of all commit IDs:
    git rev-list --all --pretty=oneline | cut -d ' ' -f 1 | sort
    
  • Print a nice graph of your commits sorted by date:
    git log --graph --all --pretty=oneline --abbrev-commit --date-order
    
  • Destroy all your local changes and get back a sane repository:
    git reset --hard
    
  • Send local repository modifications to remote one:
    git push origin
    
  • Attach a tag to a given commit:
    git tag "1.2.3" 8fe2934d1552c97246836987f0ea08e10ba749ae
    
  • Publish all tags to the remote repository:
    git push --tags
    
  • Add a remote repository located on GitHub as a submodule in the ./folder/project-copy folder:
    git submodule add https://github.com/my-id/project.git ./folder/project-copy
    
  • While playing with backups of a local repository, you may encounter this error:
    Cannot rewrite branch(es) with a dirty working directory.
    

    In this case, you can get back a clean repository by removing all the unstaged changes:

    git stash
    

2 thoughts on “Git commands

  1. Pingback: Useful Commands: a Synthesis | Kevin Deldycke

  2. Pingback: All my command lines | Kevin Deldycke

Leave a Reply

Your email address will not be published.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>