git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Working with Git and CVS in a team.
@ 2008-06-13 14:33 Mirko Stocker
  2008-06-13 14:50 ` Miklos Vajna
  2008-06-13 16:09 ` Jeff King
  0 siblings, 2 replies; 14+ messages in thread
From: Mirko Stocker @ 2008-06-13 14:33 UTC (permalink / raw)
  To: Git Mailing List

Hello,

Our team works on an existing project that's in CVS, but we don't have
the permissions to commit directly to it. We still need to make
changes and want to stay as up to date as possible, so we are trying
to use git to track the CVS repository and to collaborate inside the
team.

Now, I'm quite new to git, so I'm not sure if the solution I created
is "correct", not way too complicated, or if there are problems waiting
for us.

git-cvsimport seems to be the solution, so I've established the 
following structure:

+-----------------+
| dev.eclipse.org |
+-----------------+
        ^
        | (1)
        |         (2)                      (3)
+---------------+      +---------------+        +------------+
| ifs:/from-cvs | ---> | ifs:/git-proj | <----- | Merge-Dude |
+---------------+      +---------------+        +------------+
                          /           \
                         /             \
                        /               \
                    +------+         +------+
                    | User |   (4)   | User |
                    +------+         +------+

1) I use git-cvsimport to update the repository every night. /git-proj
   is a "clone --bare" of the /from-cvs repository.

2) After the import, I push the changes from CVS to /git-proj using
   'git push /git-proj origin'.

This first two steps can be done with a cronjob, there shouldn't be
any conflicts.

3) Then we have the role of a "Merge-Dude" who pulls the changes from
   /git-proj and uses 'git merge origin/origin' to update his master.
   If there are any conflicts, he resolves them and pushes everything
   back to the master at /git-proj.

4) The users can just push and pull from /git-proj.

>From time to time, we can use 'git diff origin/origin' to get a patch
with all the changes we made and have to send upstream.

What do you guys think, is this approach feasible?

What I don't like is how we have to make the upstream patch(es). Is
there an easy way we can get multiple patches, lets say for each
commit we made? Or is it easier to make a lots of branches and to
then create a patch from the diff between the branch and origin/origin?

Wow, this got longer than I expected. Thanks in advance!

Mirko Stocker

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2008-06-16 16:46 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-06-13 14:33 Working with Git and CVS in a team Mirko Stocker
2008-06-13 14:50 ` Miklos Vajna
2008-06-13 20:43   ` Mirko Stocker
2008-06-13 20:47     ` Miklos Vajna
2008-06-15 20:20       ` Mirko Stocker
2008-06-15 20:34         ` Miklos Vajna
2008-06-16 16:04     ` John J. Franey
2008-06-16 16:44       ` Jakub Narebski
2008-06-13 16:09 ` Jeff King
2008-06-13 20:47   ` Mirko Stocker
2008-06-13 20:55     ` Jeff King
2008-06-15 20:22       ` Mirko Stocker
2008-06-15 20:48         ` Jeff King
2008-06-16 13:39           ` Mirko Stocker

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).