Git Cheatsheet
Local branch creation
git checkout main
git pull
git checkout -b illustration_workflow
Commit
git add compute_sessions.py
git commit -m "illustration du workflow"
Revert
Add a commit that reverts previous changes (that way we can create a new tag to deploy anew a previous version)
git revert HEAD
Rebase on main
git checkout main
git pull
git checkout illustration_workflow
git rebase main
We can also use git fomo (see below aliases) If we have conflicts, handle them manually, then
git push -f
Push
git push -u --force-with-lease origin illustration_workflow
We can configure git to directly send the current branch without having to specify those arguement (simple “git push”):
git config --add --bool push.autoSetupRemote true
or for older git version:
git config --global push.default current
Reseting
git reflog
git reset HEAD@{index}
git reset –hard HEAD to delete permanently modifications made after HEAD
Add a small fix to last commit
git commit -am --amend --no-edit
Warning Only on local commit that have not been pushed ! To change only the commit message:
git commit --amend
Move the last commit from main to another branch
git checkout new_branch
git cherry-pick master
git checkout master
git reset HEAD~ --hard
Aliases
[alias]
fomo = !git fetch origin main && git rebase origin/main
ci = commit
co = checkout -b
st = status -sb
sts = status -s
br = branch
tip = log -n 1 --abbrev-commit --decorate
lol = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit
lola = log --graph --decorate --pretty=oneline --abbrev-commit --all
unstage = reset HEAD
cp = cherry-pick
cam = commit -am
last = log -1 --stat
cl = clone
dc = diff --cached
lg = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %Cblue<%an>%Creset' --abbrev-commit --date=relative --all
dt = diff-tree --no-commit-id --name-only -r
pushf = push --force-with-lease
last = log -1 --stat
oups = commit --amend --no-edit
unadd = reset HEAD
nvm = reset --hard HEAD