4
I’m working on a redesign of our web application, in a separate branch, say new_interface
. Meanwhile, other developers remain in the branch master
, mainly solving bugs. While some files may differ considerably, I need to recover the fixes that were by the other developers.
Till then I’ve given merge
of master
in my branch (using Tortoisegit), but last time it didn’t work. Several files got wrong, even some that did not accuse conflict. It seems that the merge
chose the version of master
instead of the reworked version.
As an alternative to solving this situation, I’m trying to study the rebase
, but I still don’t know if it would solve my problem.
The rebase
will resolve my situation or the outcome will be the same as the merge
?
Edit:
I confirmed that although the conflict editing system is a little different, the end result is very similar, even with the same problems.
For example, in some files the changes belonging to new_interface
disappeared in the final log, in both methods.
I’ll have to manually move all modifications from one branch to another or there’s another alternative?
Edit 2: I ended up merging (squash, recursive - Patience), but I had to go file by file (including those who did not accuse conflict) choosing which changes I wanted to incorporate and which to discard.
One mistake I had made the first time I tried the merge was to click on "resolve Conflicts using mine" in the files I wanted to keep completely untouched. In fact the right would be to mark "revert", discarding the version of master
and keeping the file as before the merge.
Who has permission to create tags, could please put the tag
tortoisegit
?– mathiasfk
You should always use
rebase
so put your commits at the end of the line of changes. However, if the changes are on the same lines, this may give error that needs to be solved manually. The ideal is to always commit frequently even with little code and update with everyone who is working on the code.– Sergio