We had a situation where a lot of my code that was written over the weekend was wiped out this past Monday when a user did not push a merge that was merged on last Friday 11/6/2020.
The situation:
- User pulled a branch around noon on 11/6/2020.
- He made the changes he needed to over the 4 hours and then before 5pm on 11/6/2020, he merged into the dev line we have. He DID finish the merge (we assume), but did not PUSH the merged changes.
- I continued to work on my other branch from Thursday 11/5/2020 until Sunday 11/8/2020. I then merged my changes into the dev line remote and everything went fine and we pushed to Test/Demo without any issues.
- The user noticed his changes were not in our Test/Demo environments. He then realized he did merge in, but never did a PUSH. He completed that push around 9:40am on 11/9/2020 and it wiped out all of my changes from the weekend. (Note: All, I think he just pushed it via VS and not the command line. So not sure what command is tied to the push in VS 2019?)
- Around 3pm on Monday 11/9/2020, I realized all my changes from the weekend were gone and started researching what happened.
We were able to revert everything by doing a cherry pick on all of my commits from the Thursday 11/5/2020 until Sunday 11/8/2020 (about 19 of them). Everything is good. We are trying to figure out what happened though.
Why would the PUSH he did on Monday 11/9/2020, cause this to be wiped out? Should he have done something else before actually committing the PUSH since it was delayed? I mean I usually 'Commit all and sync' after completing the merge to the dev line remote.
Update: All, I think he just pushed it via VS and not the command line. So not sure what command is tied to the push in VS 2019?