Master: git fetch
In this video we'll learn some of the additional options for
In init: git fetch, we covered how to use
git fetch to fetch from a single remote.
If we have multiple remotes, we can use the
--all option to fetch for all remotes.
We can do so by running:
git fetch --all.
In this case, it will download information from both the origin and upstream remotes.
To fetch from multiple remotes, but not all of them, we can use the
For example, if I didn't want to fetch from all remotes, but specifically the origin and upstream remote, I could run:
git fetch --multiple origin upstream
The final option we'll learn is
Over time, you'll build up a lot references. By default,
git fetch does not remove local references that no longer exist on a remote.
To do so, you have to add the
Let's demonstrate this by pushing a test branch to GitHub.
Then we'll remove the test branch on GitHub.
If I run
git fetch origin, notice nothing is updated.
If I run
git log --oneline --decorate --graph --all, we still see a local reference to origin/test.
However, if we run
git fetch --prune origin, we see from the output it deleted the test branch, and we can verify it no longer appears when running