I am usually doing some basic code development on one PC (A) and pushing that to bitbucket via Sourcetree.
On my production computer (B), I pull this locally and typically mostly use the code as is, occasionally fixing a few bugs and pushing back to the Bitbucket repository.
Recently, I found myself in a situation where, while on (B), I pushed some modifications to Bitbucket, only to discover that I had some pending mods on (A) as well. I committed those on A locally and tried to push that to Bitbucket, which obviously failed.
I tried some uneducated actions: pulling the remote (as the error message was suggesting this) and some additional merge of some kind, which I stupidly did not note down.
The result is that I am finding myself in the situation described below (on A), which prevents me from pushing any further modifications made on A.
Is there any simple course of action to reconcile A and the remote so that I can the pull the result to B?
Edit:
Actually, here is the error message I get when pushing the A repo to Bitbucket in SourceTree:
git -c diff.mnemonicprefix=false -c core.quotepath=false --no-optional-locks push -v --set-upstream origin master:master
Pushing to https://bitbucket.org/XXXXXXXXXX.git
To https://bitbucket.org/XXXXXXXXXXX.git
! [rejected] master -> master (non-fast-forward)
error: failed to push some refs to 'https://bitbucket.org/XXXXXXXXXX.git'
hint: Updates were rejected because a pushed branch tip is behind its remote
hint: counterpart. Check out this branch and integrate the remote changes
hint: (e.g. 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
Completed with errors, see above.
While I can't say that I have quite understood how this works, I managed to get out this hole by following some of the UI 's suggestions, ending up with this situation:
The lesson I draw from this is to always pull from remote before working on a repo and always push after having worked on a repo. Whichever machine you are working on. Sort of...
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.