Git
FAQ
Remote: error: failed to lock refs/heads/…
Ignoring files without adding them to .gitignore
To ignore untracked files, you have a file in your git folder called .git/info/exclude. This file is your own gitignore inside your local git folder, which means is not going to be committed or shared with anyone else. You can basically edit this file and stop tracking any (untracked) file.
My basic configuration for a new device
git config --global user.name "Claus Conrad"
git config --global user.email 584491+cconrad@users.noreply.github.com
git config --global core.autocrlf false
Get list of accessible repositories
ssh git@git.bekey.dk info
- Source: [Serhii Ch.](…/Serhii Cherednychenko/)
Pull and merge remote branch “origin/main” into current
git pull origin main
Rollback to previous commit
Revert your repo to an older commit and preserve all intervening work:
git checkout 307a5cd # check out the commit that you want to reset to
git checkout -b fixy # create a branch named fixy to do the work
git merge -s ours master # merge master's history without changing any files
git checkout master # switch back to master
git merge fixy # and merge in the fixed branch
git push # done, no need to force push!
Done! Replace 307a5cd with whatever commit you want in your repo.
Source: Stack Overflow
How to use git stash
Think of Git stash like a pocket where you can quickly put away your work when you need to switch to something else.
Imagine you’re working on a craft project (your code changes) and suddenly your mom calls you to help with groceries. You need to stop what you’re doing, but you don’t want to lose your progress.
With Git stash:
- You put your unfinished work in your pocket (
git stash save
) - Go help with groceries (switch branches, pull updates, etc.)
- When you’re done, you take your work back out of your pocket (
git stash apply
orgit stash pop
)
The main commands are:
git stash save "message"
- Put your changes away with a notegit stash list
- See all your pockets of saved workgit stash apply
- Take out your work but keep a copy in your pocketgit stash pop
- Take out your work and empty that pocketgit stash drop
- Throw away what’s in your pocket
It’s super useful when you need to quickly switch context without committing half-finished work!
Resources
- Introduction to GitHub and Open-Source Projects > How To Create a Pull Request on GitHub
- Git Forks and Upstreams: How-to