Use aliases to quickly commit and push
Add these two lines to your ~/.gitconfig
. If [alias]
doesn’t exist there, add it.
[alias]
ac = !git add . && git commit -am
ap = "!f() { git add -A && git commit -m \"$@\" && git push; }; f"
Now you can do both git ac "message"
and git ap "message"
to commit and commit and push.
Check in an empty directory
Create a .gitignore with this content:
# Ignore everything in this directory
*
# Except this file
!.gitignore
Add something to your last commit
Use git add just as you would for a normal commit. Then:
git commit --ammend
Edit last commit message
git commit --amend -m "New commit message"
Resolve all merge conflicts by overwriting with all local or remote files (source)
To use local files
grep -lr '<<<<<<<' . | xargs git checkout --ours
To use remote files
grep -lr '<<<<<<<' . | xargs git checkout --theirs
Remove local (untracked) files from a current branch
git clean -f
Directories as well
git clean -fd
.gitignore files as well
git clean -fdx
Show a single file from a specific revision
git show <revision>:<filename>
Remove an already pushed tag in a Github / remote repo
git tag -d yourtag
git push origin :refs/tags/yourtag
Undo the last commit
git reset --hard HEAD^
If you don’t care about the changes, or
git reset --soft HEAD^
If you do.
If you’ve already pushed, try this:
git revert HEAD
Show all files that will get added when doing a git add .
git status -u