Here's my scenario:
I'm working on fixing bugs in file1 in a local branch. My coworker is in his own local branch, merging file1 into file2 in a refactor. He finishes his work and merges back into master and pushes. Now file1 no longer exists in the HEAD.
When I do a pull and try to merge my file1 changes back into master, what will happen? Is git smart enough to account for this or will I have to merge my changes manually?
First, you don't merge files, you merge revisions (or rather lines of development).
Second, git uses similarity based heuristic to detect renames, so if file2 is similar enough to file1, then git should automatically merge your and his changes into file2. If not, you would get 'CONFLICT(modify/delete)' (I think) you would have to resolve manually.
It depends.... was there a git mv file1 file2 did git recognize this as a rename? if it did then it might recognize this... otherwise it will probably just try to create a new file1. you may have to do some manual merge intervention or a post merge patch. Also this is git TIAS worst case scenario you roll back the merge before pushing.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With