GIT Cheatsheet: Difference between revisions

From UNIX Systems Administration
Jump to navigation Jump to search
No edit summary
No edit summary
Line 77: Line 77:
         git cherry-pick <hash>
         git cherry-pick <hash>


        Remove the commit from the original branch (soft reset), removing commits but keeping staging directory in branch
* Remove the commit from the original branch (soft reset), removing commits but keeping staging directory in branch
                git checkout <original branch>
*:<tt>'''git checkout <original branch>'''</tt>
                git log
*:<tt>'''git log'''</tt>
                git reset --soft <hash of correct commit>
*:<tt>'''git reset --soft <hash of correct commit>'''</tt>
                git status
*:<tt>'''git status'''</tt>


        Remove the commit from the original branch (mixed reset), removing commits and files in staging directory in branch
* Remove the commit from the original branch (mixed reset), removing commits and files in staging directory in branch
                git checkout <original branch>
*:<tt>'''git checkout <original branch>'''</tt>
                git reset <hash>
*:<tt>'''git reset <hash>'''</tt>
                git status
*:<tt>'''git status'''</tt>


        Remove the commit from the original branch (hard reset), removing commits and tracked files entirely in branch
* Remove the commit from the original branch (hard reset), removing commits and tracked files entirely in branch
                git checkout <original branch>
*:<tt>'''git checkout <original branch>'''</tt>
                git reset --hard <hash>
*:<tt>'''git reset --hard <hash>'''</tt>
                git status
*:<tt>'''git status'''</tt>


* Remove Untracked Directories and Files
* Remove Untracked Directories and Files
*:<tt>'''git clean -df'''</tt>
*:<tt>'''git clean -df'''</tt>
*:<tt>'''git status'''</tt>
*:<tt>'''git status'''</tt>

Revision as of 18:44, 2 April 2026

GIT Cheatsheet

  • Initial setup git Global Configuration Variables
    These configuration variables are stored in ~/.gitconfig
    git config --global user.name "<user>"
    git config --global user.email "<email>"
    git config --list
  • Initialize a new git Repository
    cd into directory to be added to the repository
    git init
    git add -A
    git commit -m "Repository Initialization"
    git remote add origin ssh:<url>
    git push origin master
  • Cloning a Remote Repository
    git clone ssh:<url> <src/.>
    git remote -v
    git branch -a
  • Creating Branches
    git branch <branch name>
    git checkout <branch name>
    git branch
  • Merging Branches
    git checkout master
    git pull origin master
    git branch --merged
    git merge <branch>
    git push origin master
  • Deleting a Branch
    git branch --merged
    git branch -d <branch to delete>
    git branch -a
    git push origin --delete <branch to delete>
  • Update a file
    git add <file>
    git commit -m "Description of changes"
    git push
  • Commiting & Pushing Changes
    git diff
    git status
    git add -A
    git commit -m "<message>"
    git pull origin <branch>
    git push origin <branch>
  • Remove files from repository keep local
    git rm --cached <file>
    git commit -m "Description of changes"
    git push
  • List files in repository
    git ls-files
  • Revert to previous version (pre commit)
    git checkout <filename>
    git status
    git diff
  • Fix commit message
    git commit --ammend -m "<message>"
  • Add a file as a part of previous commit
    git commit --ammend

Move commits to another branch

       Get Hash
               git log
       git checkout <branch>
       git cherry-pick <hash>
  • Remove the commit from the original branch (soft reset), removing commits but keeping staging directory in branch
    git checkout <original branch>
    git log
    git reset --soft <hash of correct commit>
    git status
  • Remove the commit from the original branch (mixed reset), removing commits and files in staging directory in branch
    git checkout <original branch>
    git reset <hash>
    git status
  • Remove the commit from the original branch (hard reset), removing commits and tracked files entirely in branch
    git checkout <original branch>
    git reset --hard <hash>
    git status
  • Remove Untracked Directories and Files
    git clean -df
    git status