Hello Developers,
When our external package server was down a couple of weeks past, I committed a number of packages that were not hosted by the developer to our GitHub repository. Because of the way git works, we have decided to not just delete these files, but to remove them from the history entirely. What does this mean for you? On your next git pull
, you might see a message like,
hint: You have divergent branches and need to specify how to reconcile them.
hint: You can do so by running one of the following commands sometime before
hint: your next pull:
hint:
hint: git config pull.rebase false # merge
hint: git config pull.rebase true # rebase
hint: git config pull.ff only # fast-forward only
hint:
hint: You can replace "git config" with "git config --global" to set a default
hint: preference for all repositories. You can also pass --rebase, --no-rebase,
hint: or --ff-only on the command line to override the configured default per
hint: invocation.
fatal: Need to specify how to reconcile divergent branches.
The quickest way around this is to run git pull --rebase
, which will sync your local revision history with the changed history of the repository. As usual, you will want to store any local changes with git stash
before merging and committing. Note that if you manage your local copy with the GitHub Desktop app, it should rebase it automatically on the next pull.
NOTE: You can avoid a lot of issues with merging by running,
git config --global pull.rebase true
in your local copy. This will cause git
to always perform a rebase
on pull
rather than the default merge
.
Please let us know if you have any issues.