Suppose A modifies X. Then, A commits its changes and pushes to origin.
Then B modifies Y. B commits its changes. Then B makes a pull (supposedly bringing the changes made by the commit made by A) from origin. Then B pushes to origin.
The last commit done by B says that B! made the changes on X and Y, but B never touched X. Sometimes, the commit made by B would overwrite the changes made by A to X (as if A never made any change).
This case was happening (more than once) to me and my team.
Before that, the "weirdest" things we did were:
- git update-index --assume-unchanged path/to/file
And
- git rm . --cached, (modify .gitignore), git add .
Any ideas? Thanks.
By the way, we ended up creating a new repo, but I'm curious.
Link to the real repo:
On this commit, laygr stands for B and app/View/Requests/view.ctp stands for X.
Could it be...?
Could it be that sublime (a well-known code editor) didn't reload the changes on X and when I did my commit, git thought that I reverted the file?