You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@flex.apache.org by Justin Mclean <ju...@classsoftware.com> on 2013/04/16 06:49:32 UTC

Merging 4.9.1 release bench into develop

Hi,

I went ahead and merged the release branch into develop, looks we've been a bit naughty and looks like quite a few changes went on in the release branch that didn't happen in develop.

Observations:
- Had no luck with git rebase it seemed to want to throw away needed changes had much better luck with "git merge origin/release4.9".
- GIt conflict management is stupid. As far as I can see unlike SVN it doesn't intelligently merge files it leaves all conflicts up to you fix manually. This is a lot more manual work.
- It's an all or nothing affair. It's not possible to push or commit partial changes as far as I can tell. This again is more work for a release manager - only way around this is to merge more frequently while making a release (each RC?) or keep changes in develop to a minimum while creating/voting on a release. There are issues with both approaches.
- Version.as files are a pain. Git marks every one as a conflict they you have to fix by hand (find -exec and grep -v is your friend here).
- Our .gitignore is set ignore things it shouldn't eg files in the ide and flex2 directories.
- Please don't comment out lines in the build files as a temporary workaround - try and fix the issue. A commented out line is very easily forgotten about.

Looks like there's been a couple of minor change made directly to trunk that are in in the 4.9 release - please be careful and don't check into trunk/master. I've not fixed this. I guess it should be merged with develop and reverted from trunk.

If there's any issue with the merges (there was quite a few changes  but mostly simple ones thankfully) reply in this thread.

Thanks,
Justin

Re: Merging 4.9.1 release bench into develop

Posted by Justin Mclean <ju...@classsoftware.com>.
Hi,

BTW I think part of the issue is that it didn't recognise that it has been synced before when 4.9 was released so I think it though that all changes from the initial creation of the 4.9 branch onwards needed to be applied. Seems reasonable in the move form SVN to Git that sync point was lost. So that probably cause some of the issues.

Justin

Re: Merging 4.9.1 release bench into develop

Posted by Justin Mclean <ju...@classsoftware.com>.
Hi,

>> Did you use MergeTool?  I'm thinking of downloading it and trying it out.
It may help a little but not a lot for simple changes as you still have to resolve the conflicts. 

It's certainly not quite as smart as SVN re conflicts but I guess it can't be because of t's distributed nature. 

Most of the conflicts I saw would not of been conflicts under SVN including files that were in conflict but had 100% identical content.

Thanks,
Justin

Re: Merging 4.9.1 release bench into develop

Posted by Justin Mclean <ju...@classsoftware.com>.
Hi,

>>> What was the change to Version.as in the develop branch that conflicted.
Release was updated to 4.9.1 and develop to 4.10.0 so that resulted in a conflict. With more frequent merges it may not be an issue.

> That wasn't a "yep" question.  But I think I know the answer: we updated the
> Version.as in the develop branch.  Do we need to do that?
I think we do that way you know you have a develop SDK and not a release SDK. Could be confusing if they both had the same version numbers.

Thanks,
Justin

Re: Merging 4.9.1 release bench into develop

Posted by Alex Harui <ah...@adobe.com>.



>> What was the change to Version.as in the develop branch that conflicted?
> Yep.
That wasn't a "yep" question.  But I think I know the answer: we updated the
Version.as in the develop branch.  Do we need to do that?  I think I saw in
the git branching model that they change the version in the release branch
after creating it (which implies the don't change it in the develop branch).
Then it won't conflict on merge.

-- 
Alex Harui
Flex SDK Team
Adobe Systems, Inc.
http://blogs.adobe.com/aharui


Re: Merging 4.9.1 release bench into develop

Posted by Justin Mclean <ju...@classsoftware.com>.
Hi,

> The git branching model seems to imply that changes to the release branch
> get merged into the develop branch at the end of the release.  Did you only
> merge to trunk?
I merged from the 4.9 release branch into develop. This was never done/was out of sync after we released 4.9.1.

The 4.9.1 release branch was however merged to trunk (way back) and is mostly in sync there (with a minor issue or two).

> Did you use MergeTool?  I'm thinking of downloading it and trying it out.
No it told me rather unhelpfully "No changes to merge" or something similar when I tried it out.

> What was the change to Version.as in the develop branch that conflicted?
Yep.

Thanks,
Justin

Re: Merging 4.9.1 release bench into develop

Posted by Alex Harui <ah...@adobe.com>.


On 4/15/13 9:49 PM, "Justin Mclean" <ju...@classsoftware.com> wrote:

> Hi,
> 
> I went ahead and merged the release branch into develop, looks we've been a
> bit naughty and looks like quite a few changes went on in the release branch
> that didn't happen in develop.
The git branching model seems to imply that changes to the release branch
get merged into the develop branch at the end of the release.  Did you only
merge to trunk?

> 
> Observations:
> - Had no luck with git rebase it seemed to want to throw away needed changes
> had much better luck with "git merge origin/release4.9".
> - GIt conflict management is stupid. As far as I can see unlike SVN it doesn't
> intelligently merge files it leaves all conflicts up to you fix manually. This
> is a lot more manual work.
Did you use MergeTool?  I'm thinking of downloading it and trying it out.
> - It's an all or nothing affair. It's not possible to push or commit partial
> changes as far as I can tell. This again is more work for a release manager -
> only way around this is to merge more frequently while making a release (each
> RC?) or keep changes in develop to a minimum while creating/voting on a
> release. There are issues with both approaches.
> - Version.as files are a pain. Git marks every one as a conflict they you have
> to fix by hand (find -exec and grep -v is your friend here).
What was the change to Version.as in the develop branch that conflicted?
> - Our .gitignore is set ignore things it shouldn't eg files in the ide and
> flex2 directories.
> - Please don't comment out lines in the build files as a temporary workaround
> - try and fix the issue. A commented out line is very easily forgotten about.
> 
> Looks like there's been a couple of minor change made directly to trunk that
> are in in the 4.9 release - please be careful and don't check into
> trunk/master. I've not fixed this. I guess it should be merged with develop
> and reverted from trunk.
> 
> If there's any issue with the merges (there was quite a few changes  but
> mostly simple ones thankfully) reply in this thread.
I'm just starting the fixing of the release target.  I'm already confused by
the changes made to build.properties which I will comment on in a separate
thread.
> 
> Thanks,
> Justin

-- 
Alex Harui
Flex SDK Team
Adobe Systems, Inc.
http://blogs.adobe.com/aharui