Jean-Laurent de Morlhon wrote:
You say the git way of doing things is 1 project -> 1 git repository, I understand, and it's not very far of having a svn repo for every project in svn altough the release plugin do not enforce this.
Subversion doesn't enforce this. In fact, Subversion is designed to support a 1 to many relationship between projects and repositories whereas Git is designed for a 1 to 1 relationship. This has nothing to do with Maven.

The current state of the release plugin force you to have the pom.xml at the root of your git repository or to say it differently if you have a pom.xml anywhere else than the root directory you can't release the project. (of course submodule of root located pom.xml do not count)...

It's also common practice in the maven world to have a parent pom to share common settings. If I follow blindlessly the 1 project -> 1 git repository, it means I have to setup a git repository for a single parent pom ?
A multi-module project should be in a single git repository. An organizational pom should be in its own repository which may, you are correct, result in a repository with a single file in it.

I have the feeling, but I maybe wrong, that this is more a limitation of the release plugin / scm provider more than a design goal.
No. It's a design goal. See https://git.wiki.kernel.org/index.php/GitSvnComparison#Partial_Checkout.2FUsed_bandwidth

Justin


Those who migrated to git, what do you do for the above cases, especially the parent pom one ?

Jean-Laurent


On Mon, Apr 26, 2010 at 5:37 PM, Justin Edelson <justinedel...@gmail.com <mailto:justinedel...@gmail.com>> wrote:

    OK. Then we're on the same page...

    On 4/26/10 11:32 AM, Kathryn Huxtable wrote:
    > Perhaps I wasn't clear. I don't support multiple projects in one
    repository. Definitely not. I was trying to criticize the
    svn-centric thinking, not support it.
    >
    > I think there should be a JIRA issue to make modules work, given
    that they'll be in separate repositories.
    >
    > I'm not going to file this because I have almost zero experience
    with nested projects. There have been places it would have made
    sense and I shied away.
    >
    > But the release plugin should work with git projects that have
    modules and it should do it in the standard git manner, which is
    one repository containing one project. (Distributed, of course.)
    >
    > -K
    >
    > On Apr 26, 2010, at 9:06 AM, Justin Edelson wrote:
    >
    >> Kathryn-
    >> Maybe I'm misunderstanding what you mean, but I think you have this
    >> exactly backwards. The "svn-centric thinking" is what's
    inspired someone
    >> to put multiple projects in the same repository. AFAIK, this is
    simply
    >> not supported by git, i.e. there's no way to clone, branch or
    tag _part_
    >> of a repository.
    >>
    >> I am by no means a git expert, so I could be mistaken about this.
    >>
    >> Justin
    >>
    >>
    >>
    >> On 4/26/10 9:21 AM, Kathryn Huxtable wrote:
    >>> Having recently switched from svn to git for most of my
    projects, I have an opinion.
    >>>
    >>> I think you should create a JIRA ticket and consider this a bug.
    >>>
    >>> What we're dealing with here is a bit of svn-centric thinking
    during design. It needs to be fixed.
    >>>
    >>> -K
    >>>
    >>> On Apr 26, 2010, at 8:08 AM, Jean-Laurent de Morlhon wrote:
    >>>
    >>>> We're considering migrating from svn to git, we stumble on the
    >>>> maven-release-plugin usage with git.
    >>>> We think we prefer to use a single repository for many
    independently built
    >>>> projects like :
    >>>>
    >>>> foobar-repo.git
    >>>>  |-> project-foo/
    >>>>  |    |-> pom.xml
    >>>>  |    |–> module A/
    >>>>  |    |-> module B/
    >>>>  |
    >>>>  |-> project-bar/
    >>>>       |-> pom.xml
    >>>>
    >>>>
    >>>> project-bar scm url looks like :
    >>>> <connection>scm:git:ssh://somehost.nowhere:/foobar-repo.git
    </connection>
    >>>>
    >>>> This hints to the right repository but I can't write that the
    actual
    >>>> project-bar is in the project-bar subdirectory.
    >>>>
    >>>> mvn release:prepare goes well and ends succesfully.
    >>>>
    >>>> mvn release:perform fails whenever it tries to build the
    project from the
    >>>> tag. It effectively clone correctly the repository.
    >>>> But use the root of the repository rather than going into
    project-bar
    >>>> subdirectory whenever it tries to clean deploy the tag.
    >>>>
    >>>> This prevent using git and multiple projects in the same
    directory.
    >>>> Some may think we should use gitmodules but
    >>>> 1) the release plugin does not support it [1]
    >>>> 2) gitmodules is an aggregate of single repository
    >>>>
    >>>> Should I issue a "new feature" ticket into jira project
    MRELEASE or SCM ?
    >>>> Or should I fall back to the current convention of 1 project
    = 1 git
    >>>> repository ??
    >>>> Or maybe someone managed to do it ?
    >>>>
    >>>> any advice appreciated.
    >>>>
    >>>> [1] : http://jira.codehaus.org/browse/SCM-530
    >>>
    >>>
    >>>
    ---------------------------------------------------------------------
    >>> To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
    <mailto:users-unsubscr...@maven.apache.org>
    >>> For additional commands, e-mail: users-h...@maven.apache.org
    <mailto:users-h...@maven.apache.org>
    >>>
    >>
    >>
    >>
    ---------------------------------------------------------------------
    >> To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
    <mailto:users-unsubscr...@maven.apache.org>
    >> For additional commands, e-mail: users-h...@maven.apache.org
    <mailto:users-h...@maven.apache.org>
    >
    >
    >
    ---------------------------------------------------------------------
    > To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
    <mailto:users-unsubscr...@maven.apache.org>
    > For additional commands, e-mail: users-h...@maven.apache.org
    <mailto:users-h...@maven.apache.org>
    >


    ---------------------------------------------------------------------
    To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
    <mailto:users-unsubscr...@maven.apache.org>
    For additional commands, e-mail: users-h...@maven.apache.org
    <mailto:users-h...@maven.apache.org>




---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
For additional commands, e-mail: users-h...@maven.apache.org

Reply via email to