From: Marc Bowes <marcbowes@gmail.com>
To: git@vger.kernel.org
Subject: git-svn against a monolithic repository
Date: Wed, 14 Apr 2010 11:44:21 +0200 [thread overview]
Message-ID: <j2tcfa4e841004140244o1dfa51fdk9b435ff7c04c2a3b@mail.gmail.com> (raw)
In-Reply-To: <h2jcfa4e841004140232y2137d43eg4be9bebdc2d29290@mail.gmail.com>
Hiya,
The subversion repository I need to work with is quite odd (by my
standards, anyways).
The structure looks something like:
|-- patches
| `-- foobar
| `-- project-name
`-- trunk-team-name
`-- project-name
That is, a single monolithic repository. Each team has their own trunk
(as a folder). The patches folder is essentially a production branch
for a specific region. Each developer tends to have a branch somewhere
else which they use to hack on. When they are ready, the code goes
through a review process and then is copied (svn copy) into trunk. It
then goes through a build process and is finally merged (in this case,
using meld) into the patches where other stuff happens to it.
I would like to use a single git repository for each project. That is,
my master branch should relate to the project folder in trunk and my
production-foobar branch should relate to the project folder in
patches. I could then use git to hack on a local branch and merge to
master (and then dcommit back to trunk). When ready, I could then
merge master into the production branch (and then dcommit back to
patches).
I guess what I'm looking for is something like:
git svn clone https://svn/url -T trunk-team-name/project-name -b
patches/foobar/project-name
However, I'm pretty sure that is wrong. Not only does it take forever
(I landed up canceling it), but I don't think the git-svn branches
will understand the weirdo layout.
I tried manually adding svn-remotes, running git-svn fetch against
then and then branching off. However, I started seeing weird things
happening when merging (sometimes git-svn became attached to the wrong
remote, sometimes it wouldn't update properly, lots of obscure merge
conflicts..).
In the worst case, I could clone each project (that is, trunk and
patches) separately and manually merge. But if I can get git to do
this for me, it'd make a lot of sense.
If anybody has any ideas, I'd be extremely grateful.
parent reply other threads:[~2010-04-14 9:44 UTC|newest]
Thread overview: expand[flat|nested] mbox.gz Atom feed
[parent not found: <h2jcfa4e841004140232y2137d43eg4be9bebdc2d29290@mail.gmail.com>]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=j2tcfa4e841004140244o1dfa51fdk9b435ff7c04c2a3b@mail.gmail.com \
--to=marcbowes@gmail.com \
--cc=git@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).