Git notes
Jump to navigation
Jump to search
General git commands that are useful
Change git remote:
With or without ssh keys added to your user account..
git remote set-url origin git@gitlab01.iwillfearnoevil.com:monitoring/nmsui.git or: git remote set-url origin https://gitlab01.iwillfearnoevil.com/monitoring/nmsui.git
Sort git branches by last commit
git for-each-ref --sort=committerdate refs/heads/ --format='%(HEAD) %(color:yellow)%(refname:short)%(color:reset) - %(color:red)%(objectname:short)%(color:reset) - %(contents:subject) - %(authorname) (%(color:green)%(committerdate:relative)%(color:reset))'
Show git commit hashes for each branch sorted by date
git for-each-ref --sort=-committerdate refs/heads/
Do a git diff between two branches
git diff <branch>..origin/<branch2>
Update Submodules
pull-latest-changes-for-all-git-submodules
git submodule update --recursive --init git submodule update --recursive --remote
Checkout specific commit hash
This can be useful when the hash is not in the expected branch, or when you are in a detached head state
git clone [remote_address_here] my_repo cd my_repo git reset --hard [ENTER HERE THE COMMIT HASH YOU WANT]
Change submodule URL
This is very much a hammer way of doing this. I have seen elegant ways online, but they seem inconsistent when something goes wrong. This way is reproducible as far as I am concerned.
This example assumes that directory/ is where your submodule lives.
edit .gitmodule change values rm -rf directory/ git submodule update --init --recursive --remote cd into directory/ git pull whatever submodule branch you need cd .. git add -A git commit -m 'save new submodule changes' git push
Save image in README.md on github.com
Per: Stackoverflow
Works:
Very Simple : Can be done using Ctrl + C/V Most of the answers here directly or indirectly involve uploading the image somewhere else & then providing a link to it. It can be done very simply by just copying any image and pasting it while editing Readme.md Copying the image - You can just click on the image file and use Ctrl + C or may copy the screenshot image to your clipboard using the snipping tool You can then simply do Ctrl + V while editing Readme.md Guithub will automatically upload it to user-images.githubusercontent.com and a link to it will be inserted there
Change remote URL
git remote set-url origin new.git.url/here
Clean up local orphan branches
When you have branches locally present that have been merged on the remote server this works to clean out your local repo.
If there are still some that you want to keep, add in a 'git -v "someName"' before xargs
remove tracking branches no longer on remote
git branch --merged | grep -v "\*" | xargs -n 1 git branch -d