git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Marcel M. Cary" <marcel@earth.care2.com>
To: Roger Garvin <yoyodyn@gmail.com>
Cc: "git@vger.kernel.org" <git@vger.kernel.org>
Subject: Re: Suggested Workflow Question
Date: Tue, 17 Mar 2009 18:27:24 -0700	[thread overview]
Message-ID: <49C04DFC.10201@earth.care2.com> (raw)
In-Reply-To: <loom.20090317T175010-470@post.gmane.org>

Roger Garvin wrote:
> I work for a small company with about 15 developers who work concurrently on
> about 10+ projects both in new development and support.
> We do custom software for manufacturing and production systems.  Part of our
> contracts with our customers is a perpetual single use license of the source
> code at each facility.
> So we have a copy of the source on our office server, and another copy at each
> customer site.  When we had only 5 developers it was easier to handle.  Now that
> we are growing we need a source control system and I have been looking heavily
> into Git.  Our old workflow does not seem that it will fit well with Git
> however, but I feel that I need a distributed system to keep track of the office
> version and the on-site versions of our source since development is taking place
> on both.
> (Some customers also have separate development, and testing versions on their
> servers as well.)
> 
> I have created git repositories on a couple of our project source directories as
> test beds.  Right now (second day) I am the only one who is actually using git.
>  Everyone else is simply accessing the files on the server as they have always
> done, and I am making the commits when I see signifigant changes.
> 
> My question is really a request for modified workflow ideas.  My plan was to
> have a master repository in our office server with clones at each customer site,
> and multiple branches for test, QA, and production versions of the source.
> Since most of these customers have closed networks, we would rely on people
> traveling onsite, or emailing patches to get any updates back into our office
> repository.
> 
> Thank you for any assistance for this revision control newb.
> 
> Roger Garvin

The workflow elements you mention so far sound sane to me:

* a repository in your office
* repositories at customer sites
* emailing patches when direct connections are not possible
* test and dev branches for each customer

I presume there will also be a production branch in customer 
repositories on which you arrange production releases... or maybe you 
just tag your test branch when it passes?

When you send patches via email, keep in mind that you'll have to convey 
which branch they belong on "out of band", for example after the commit 
message and above the diffstat.

There was an interesting discussion about maintaining per-client code on 
different branches recently, but I can't find it.

I've found Git to be very flexible.  Maybe you could start by emulating 
your current workflow and refine it as you go?  If you find you don't 
know how code travels currently... well, maybe you can just let your 
team pass patches around until patterns emerge.

Marcel

  reply	other threads:[~2009-03-18  1:28 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-03-17 17:51 Suggested Workflow Question Roger Garvin
2009-03-18  1:27 ` Marcel M. Cary [this message]
2009-03-18  3:54   ` Marcel M. Cary
2009-03-18  4:41   ` Martin Langhoff
2009-03-18 13:00     ` Roger Garvin
2009-03-18 13:52       ` Robin Rosenberg
2009-04-17 21:11         ` Roger Garvin

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=49C04DFC.10201@earth.care2.com \
    --to=marcel@earth.care2.com \
    --cc=git@vger.kernel.org \
    --cc=yoyodyn@gmail.com \
    /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).