You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@struts.apache.org by Rene Gielen <rg...@apache.org> on 2012/11/28 18:25:20 UTC

Git (Was: Plan for Struts 3)

Folks,

I think right at this point we should fork discussion on methodology
(Git) from new features as in the rest of this thread.

Moving development to the Git infrastructure ASF / Infra now provides is
*not* a no-brainer, and it requires a little bit more than just a few +1s :)

Let's step back, hold breath, and dive into serious discussion about
that. I'm preparing a more detailed post, but here are some first links
worth reading as a primer on on this topic:

http://nvie.com/posts/a-successful-git-branching-model/
https://git-wip-us.apache.org
http://git.apache.org (list of our mirrored Git repos)

For a deep dive, feel free to read the one-stop Git reference this weekend:
http://git-scm.com/book/

- René

Am 22.11.12 09:11, schrieb Lukasz Lenart:
> Hi,
> 
> I've prepared a simple plan to start working on Struts 3 which is
> available here [1]
> 
> Request Git repo from INFRA
> Import project
> Remove deprecated plugins
> Remove deprecated APIs
> Switch to Java 1.6
> Rename XWork packages to org.apache.struts.xwork
> Rename Struts 2 packages to org.apache.struts ?
> Prepare the first release
> 
> [1] https://cwiki.apache.org/confluence/display/WW/Struts+3
> 
> 
> Regards
> 

-- 
René Gielen
http://twitter.com/rgielen

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org


Re: Git (Was: Plan for Struts 3)

Posted by Lukasz Lenart <lu...@apache.org>.
2012/12/6 Christian Grobmeier <gr...@gmail.com>:
> There are some minor things I found:
>
> - the develop branch needs to be used in CI. Not a big deal, but somehow we
> need to tell it the CI

Yes, you can - there is option branches to build

> - what about feature branches? Should they all go remote? When are they
> merged into develop?

No, you can push it remote but if it's a small change it can stay
local. You merge them when you finished ;-)

> Example: I make a feature A, on lokal. When done I merge it into develop
> and push it to remote, where everybody can access it.
> Now lets say I develop the internal guice upgrade. Its something many
> people want to do. Git lets me push my feature branch to remote, like:
> *
> http://www.mariopareja.com/blog/archive/2010/01/11/how-to-push-a-new-local-branch-to-a-remote.aspx
>
> - use of git rebase. this is a feature which I really don't like or don't
> understand. For me history is sacred. When I do a feature A, i might have 5
> commits. Now when I am pushing this, there are some people who say: nobody
> is interested in the commit-mess. They say, I should do a rebase, and my 5
> commits become one visible.

You perform those five commits to your feature branch, when you have
done, switch to develop and merge

 git merge --no-ff myfeature


Regards
-- 
Łukasz
+ 48 606 323 122 http://www.lenart.org.pl/

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org


Re: Git (Was: Plan for Struts 3)

Posted by Christian Grobmeier <gr...@gmail.com>.
On Thu, Dec 6, 2012 at 12:43 PM, Rene Gielen <rg...@apache.org> wrote:

> great and comprehensive writeup. Which brings me to what is really good
> about not being the first time mover - being able to profit from other's
> experiences.
>
>
Unfortunately I have not so much more experience with GIT :-|
Well, I tried the proposed workflow in another project and it looks good so
far.

There are some minor things I found:

- the develop branch needs to be used in CI. Not a big deal, but somehow we
need to tell it the CI
- what about feature branches? Should they all go remote? When are they
merged into develop?

Example: I make a feature A, on lokal. When done I merge it into develop
and push it to remote, where everybody can access it.
Now lets say I develop the internal guice upgrade. Its something many
people want to do. Git lets me push my feature branch to remote, like:
*
http://www.mariopareja.com/blog/archive/2010/01/11/how-to-push-a-new-local-branch-to-a-remote.aspx

- use of git rebase. this is a feature which I really don't like or don't
understand. For me history is sacred. When I do a feature A, i might have 5
commits. Now when I am pushing this, there are some people who say: nobody
is interested in the commit-mess. They say, I should do a rebase, and my 5
commits become one visible.

Thanks for the other links below; I will surely read through them the next
days.
Surely they will include some wisdom

Cheers
Christian



> A nice glance into some Git-related discussions over at Incubator:
> http://markmail.org/message/6f7l3fjksjeem6li
>
> Wicket has fully moved to Git, we might want to peek a bit:
> http://markmail.org/message/5rnmtklofv2w7lsv
> http://markmail.org/message/6f7l3fjksjeem6li
> https://issues.apache.org/jira/browse/INFRA-4204
> https://wicket.apache.org/contribute/release.html
>
> Maven obviously had a bit more to plan...
> https://cwiki.apache.org/MAVEN/git-migration.html
> https://issues.apache.org/jira/browse/INFRA-5266
>
> Cloudstack was the prototype project for Git@Apache
> https://cwiki.apache.org/CLOUDSTACK/git.html
> https://cwiki.apache.org/CLOUDSTACK/working-with-cloudstack-code.html
>
> - René
>
>
> Am 06.12.12 11:53, schrieb Christian Grobmeier:
> > On Thu, Dec 6, 2012 at 11:44 AM, Lukasz Lenart <lu...@apache.org>
> wrote:
> >> 2012/12/6 Christian Grobmeier <gr...@gmail.com>:
> >>> Would be glad to look at your repos on github.
> >>>
> >>> One question: are we going to fix issues in Struts 2.x on SVN or are
> >>> we going to have everything on GIT then?
> >>> In the git-brnaching-model link I see one development branch. I think
> >>> we would need a develop2x, develop3x etc branches, right?
> >>
> >> I thought to leave S2 on SVN and only support it in case of security
> >> fixes and really important (performance) fixes, on Git just have S3
> >
> > Works for me. Its much safer until we all have the necessary
> > experience and a workflow has become natural.
> >
> > We can incoperate fixes from S2 (svn) into S3 (git). I once wrote
> > something in that direction for Apache Logging:
> > http://wiki.apache.org/logging/UsingGitWithLogging
> >
> > I took changes from GIT and pushed it to SVN
> >
> > Cheers
> > Christian
> >
> >
> >>
> >> Regards
> >> --
> >> Łukasz
> >> + 48 606 323 122 http://www.lenart.org.pl/
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> >> For additional commands, e-mail: dev-help@struts.apache.org
> >>
> >
> >
> >
> > --
> > http://www.grobmeier.de
> > https://www.timeandbill.de
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> > For additional commands, e-mail: dev-help@struts.apache.org
> >
>
> --
> René Gielen
> http://twitter.com/rgielen
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
>
>


-- 
http://www.grobmeier.de
https://www.timeandbill.de

Re: Git (Was: Plan for Struts 3)

Posted by Rene Gielen <rg...@apache.org>.
Christian,

great and comprehensive writeup. Which brings me to what is really good
about not being the first time mover - being able to profit from other's
experiences.

A nice glance into some Git-related discussions over at Incubator:
http://markmail.org/message/6f7l3fjksjeem6li

Wicket has fully moved to Git, we might want to peek a bit:
http://markmail.org/message/5rnmtklofv2w7lsv
http://markmail.org/message/6f7l3fjksjeem6li
https://issues.apache.org/jira/browse/INFRA-4204
https://wicket.apache.org/contribute/release.html

Maven obviously had a bit more to plan...
https://cwiki.apache.org/MAVEN/git-migration.html
https://issues.apache.org/jira/browse/INFRA-5266

Cloudstack was the prototype project for Git@Apache
https://cwiki.apache.org/CLOUDSTACK/git.html
https://cwiki.apache.org/CLOUDSTACK/working-with-cloudstack-code.html

- René


Am 06.12.12 11:53, schrieb Christian Grobmeier:
> On Thu, Dec 6, 2012 at 11:44 AM, Lukasz Lenart <lu...@apache.org> wrote:
>> 2012/12/6 Christian Grobmeier <gr...@gmail.com>:
>>> Would be glad to look at your repos on github.
>>>
>>> One question: are we going to fix issues in Struts 2.x on SVN or are
>>> we going to have everything on GIT then?
>>> In the git-brnaching-model link I see one development branch. I think
>>> we would need a develop2x, develop3x etc branches, right?
>>
>> I thought to leave S2 on SVN and only support it in case of security
>> fixes and really important (performance) fixes, on Git just have S3
> 
> Works for me. Its much safer until we all have the necessary
> experience and a workflow has become natural.
> 
> We can incoperate fixes from S2 (svn) into S3 (git). I once wrote
> something in that direction for Apache Logging:
> http://wiki.apache.org/logging/UsingGitWithLogging
> 
> I took changes from GIT and pushed it to SVN
> 
> Cheers
> Christian
> 
> 
>>
>> Regards
>> --
>> Łukasz
>> + 48 606 323 122 http://www.lenart.org.pl/
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>> For additional commands, e-mail: dev-help@struts.apache.org
>>
> 
> 
> 
> --
> http://www.grobmeier.de
> https://www.timeandbill.de
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
> 

-- 
René Gielen
http://twitter.com/rgielen

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org


Re: Git (Was: Plan for Struts 3)

Posted by Christian Grobmeier <gr...@gmail.com>.
On Thu, Dec 6, 2012 at 11:44 AM, Lukasz Lenart <lu...@apache.org> wrote:
> 2012/12/6 Christian Grobmeier <gr...@gmail.com>:
>> Would be glad to look at your repos on github.
>>
>> One question: are we going to fix issues in Struts 2.x on SVN or are
>> we going to have everything on GIT then?
>> In the git-brnaching-model link I see one development branch. I think
>> we would need a develop2x, develop3x etc branches, right?
>
> I thought to leave S2 on SVN and only support it in case of security
> fixes and really important (performance) fixes, on Git just have S3

Works for me. Its much safer until we all have the necessary
experience and a workflow has become natural.

We can incoperate fixes from S2 (svn) into S3 (git). I once wrote
something in that direction for Apache Logging:
http://wiki.apache.org/logging/UsingGitWithLogging

I took changes from GIT and pushed it to SVN

Cheers
Christian


>
> Regards
> --
> Łukasz
> + 48 606 323 122 http://www.lenart.org.pl/
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
>



--
http://www.grobmeier.de
https://www.timeandbill.de

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org


Re: Git (Was: Plan for Struts 3)

Posted by Lukasz Lenart <lu...@apache.org>.
2012/12/6 Christian Grobmeier <gr...@gmail.com>:
> Would be glad to look at your repos on github.
>
> One question: are we going to fix issues in Struts 2.x on SVN or are
> we going to have everything on GIT then?
> In the git-brnaching-model link I see one development branch. I think
> we would need a develop2x, develop3x etc branches, right?

I thought to leave S2 on SVN and only support it in case of security
fixes and really important (performance) fixes, on Git just have S3


Regards
-- 
Łukasz
+ 48 606 323 122 http://www.lenart.org.pl/

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org


Re: Git (Was: Plan for Struts 3)

Posted by Lukasz Lenart <lu...@apache.org>.
2012/12/6 Rene Gielen <rg...@apache.org>:
> For migrating current SVN repo content to Git, Infra prefers to
> completely move an existing Git mirror repo. As I see it, we should
> migrate struts2.git and arguably struts-sandbox.git and let the other
> parts reside in SVN with Git morring only.

I didn't think about that :-) We can migrate Struts2, try out how to
use Git and start development of S3 after all :-)

But we should call the repo struts.git ;-)


Regards
-- 
Łukasz
+ 48 606 323 122 http://www.lenart.org.pl/

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org


Re: Git (Was: Plan for Struts 3)

Posted by Rene Gielen <rg...@apache.org>.
This is an excellent question and part of the discussion I wanted to
start (but wasn't able to follow up so far in the last busy days)

Given that we decide for Git:

As for me, it makes absolutely no sense to have a common origin codebase
split up into two repositories. If we vote for developing S3 based on a
Git repository and workflow, we should move *the full* Struts 2
development to Git. Developing a new major version takes time, and we
will have to deal with a lot of commits that need to be ported from 2.x
to 3.x branch and vice versa. Having S3 in Git an S2 in subversion makes
absolutely no sense to me then.

What I don't see is moving the S1, site, maven etc. parts of our
Subversion repo. A good way to start planning for chainsawing is having
a look at our Git mirror repos at http://git.apache.org. Currently there
are 5 repos:

struts1.git
struts2.git
struts-sandbox.git
struts-maven.git
struts-site.git

For migrating current SVN repo content to Git, Infra prefers to
completely move an existing Git mirror repo. As I see it, we should
migrate struts2.git and arguably struts-sandbox.git and let the other
parts reside in SVN with Git morring only.

- René

Am 06.12.12 11:32, schrieb Christian Grobmeier:
> On Thu, Dec 6, 2012 at 11:13 AM, Lukasz Lenart <lu...@apache.org> wrote:
>> 2012/11/28 Dave Newton <da...@gmail.com>:
>>> On Wed, Nov 28, 2012 at 4:42 PM, Christian Grobmeier wrote:
>>>> http://nvie.com/posts/a-successful-git-branching-model/
>>>
>>> https://github.com/nvie/gitflow
>>>
>>> Yeah, I like the workflow quite a bit, although I've only used it on a
>>> couple of smallish projects.
>>
>> The idea looks pretty nice, as we don't have a Git repo yet, I'm going
>> to fork struts2 on the GitHub and try to play a bit - especially with
>> release process
> 
> Would be glad to look at your repos on github.
> 
> One question: are we going to fix issues in Struts 2.x on SVN or are
> we going to have everything on GIT then?
> In the git-brnaching-model link I see one development branch. I think
> we would need a develop2x, develop3x etc branches, right?
> 
> Cheers
> Christian
> 
> 
>>
>>
>> Regards
>> --
>> Łukasz
>> + 48 606 323 122 http://www.lenart.org.pl/
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
>> For additional commands, e-mail: dev-help@struts.apache.org
>>
> 
> 
> 
> --
> http://www.grobmeier.de
> https://www.timeandbill.de
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
> 

-- 
René Gielen
http://twitter.com/rgielen

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org


Re: Git (Was: Plan for Struts 3)

Posted by Christian Grobmeier <gr...@gmail.com>.
On Thu, Dec 6, 2012 at 11:13 AM, Lukasz Lenart <lu...@apache.org> wrote:
> 2012/11/28 Dave Newton <da...@gmail.com>:
>> On Wed, Nov 28, 2012 at 4:42 PM, Christian Grobmeier wrote:
>>> http://nvie.com/posts/a-successful-git-branching-model/
>>
>> https://github.com/nvie/gitflow
>>
>> Yeah, I like the workflow quite a bit, although I've only used it on a
>> couple of smallish projects.
>
> The idea looks pretty nice, as we don't have a Git repo yet, I'm going
> to fork struts2 on the GitHub and try to play a bit - especially with
> release process

Would be glad to look at your repos on github.

One question: are we going to fix issues in Struts 2.x on SVN or are
we going to have everything on GIT then?
In the git-brnaching-model link I see one development branch. I think
we would need a develop2x, develop3x etc branches, right?

Cheers
Christian


>
>
> Regards
> --
> Łukasz
> + 48 606 323 122 http://www.lenart.org.pl/
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
>



--
http://www.grobmeier.de
https://www.timeandbill.de

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org


Re: Git (Was: Plan for Struts 3)

Posted by Lukasz Lenart <lu...@apache.org>.
2012/12/6 Lukasz Lenart <lu...@apache.org>:
> The idea looks pretty nice, as we don't have a Git repo yet, I'm going
> to fork struts2 on the GitHub and try to play a bit - especially with
> release process

Updated the plan with links about Git flow

https://cwiki.apache.org/confluence/display/WW/Struts+3


Regards
-- 
Łukasz
+ 48 606 323 122 http://www.lenart.org.pl/

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org


Re: Git (Was: Plan for Struts 3)

Posted by Lukasz Lenart <lu...@apache.org>.
2012/11/28 Dave Newton <da...@gmail.com>:
> On Wed, Nov 28, 2012 at 4:42 PM, Christian Grobmeier wrote:
>> http://nvie.com/posts/a-successful-git-branching-model/
>
> https://github.com/nvie/gitflow
>
> Yeah, I like the workflow quite a bit, although I've only used it on a
> couple of smallish projects.

The idea looks pretty nice, as we don't have a Git repo yet, I'm going
to fork struts2 on the GitHub and try to play a bit - especially with
release process


Regards
-- 
Łukasz
+ 48 606 323 122 http://www.lenart.org.pl/

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org


Re: Git (Was: Plan for Struts 3)

Posted by Dave Newton <da...@gmail.com>.
On Wed, Nov 28, 2012 at 4:42 PM, Christian Grobmeier wrote:
> http://nvie.com/posts/a-successful-git-branching-model/

https://github.com/nvie/gitflow

Yeah, I like the workflow quite a bit, although I've only used it on a
couple of smallish projects.

Dave

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org


Re: Git (Was: Plan for Struts 3)

Posted by Christian Grobmeier <gr...@gmail.com>.
On Wed, Nov 28, 2012 at 8:36 PM, Lukasz Lenart <lu...@apache.org> wrote:
> 2012/11/28 Rene Gielen <rg...@apache.org>:
>> Moving development to the Git infrastructure ASF / Infra now provides is
>> *not* a no-brainer, and it requires a little bit more than just a few +1s :)
>>
>> Let's step back, hold breath, and dive into serious discussion about
>> that. I'm preparing a more detailed post, but here are some first links
>> worth reading as a primer on on this topic:
>
> For me it is simple +1 as I'm using Git(Hub) on daily basis :-)

I am also +1, but for me it is more an adventure. While use Git daily,
unfortunately I do not use it with large teams and a (maybe) complex
build cycle.
That said, we are also migrating with log4php and try to utilize this
workflow (as already suggested):
http://nvie.com/posts/a-successful-git-branching-model/

Lets see how it deals out - worst case we'll learn a lot

Cheers



>
> Regards
> --
> Łukasz
> + 48 606 323 122 http://www.lenart.org.pl/
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
>



--
http://www.grobmeier.de
https://www.timeandbill.de

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org


Re: Git (Was: Plan for Struts 3)

Posted by Lukasz Lenart <lu...@apache.org>.
2012/11/28 Rene Gielen <rg...@apache.org>:
> Moving development to the Git infrastructure ASF / Infra now provides is
> *not* a no-brainer, and it requires a little bit more than just a few +1s :)
>
> Let's step back, hold breath, and dive into serious discussion about
> that. I'm preparing a more detailed post, but here are some first links
> worth reading as a primer on on this topic:

For me it is simple +1 as I'm using Git(Hub) on daily basis :-)


Regards
-- 
Łukasz
+ 48 606 323 122 http://www.lenart.org.pl/

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org