Walt Mankowski on 10 Dec 2010 10:00:51 -0800


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: [PLUG] new to git - have questions


Advise like "branch only when necessary" is mainly because branching
is a complete nightmare on most version control systems.  Git does
branching so elegantly that git users tend to use branches much more
than users of other systems.  This article [1] gives a good
introduction to how a git user might incorporate branches into his or
her normal daily workflow.

Not that any of this really answers Eric's question, though...

Walt

1. http://ietl.univ-lyon2.fr/sites/ietl/IMG/pdf/Git_merging_by_example.pdf

On Fri, Dec 10, 2010 at 12:34:35PM -0500, Lee Marzke wrote:
> I'm  a perforce user myself,  but generally the question to branch
> or not depends on if conflicts
> will be avoided by doing so,   and the stability requirements of
> main (trunk).
> 
> If there are only 2 programmers,  and no-one else using the code,
> then the 2nd programmer
> doesn't really need to branch as their work won't interfere.   If
> there are others using the code
> base - and you don't want intermediate (unstable) check-ins to main
> - then perhaps the 2nd programmer
> should also create a branch.
> 
> Note that Git as used on the Linux kernel has a defacto destributed
> workflow related to Linux and
> his Leutenants and that may not match well with a commercial company
> with a central repository.
> Normally with the kernel and Git each developer would have his own
> copy of the code ( which is a branch ) but
> you have described using a central repository,  but while supported,
> this is normally somewhat against grain of many
> Git users.    So if you want a good description of how to use
> central repositories,  there is much more
> information available outside of Git.
> 
> For a good discussion on when and why to branch ( in a tool neutral
> fashion ) there is a
> pattern language published here:
> 
> http://www.cmcrossroads.com/bradapp/acme/branching/
> 
> There is also "High Level Best Practices in SCM"  which is also
> mostly tool neutral:
> 
> http://www.perforce.com/perforce/papers/bestpractices.html
> 
> For instance this recommends to:
> 
> - Branch only when necessary
> - Branch Late (for release)'
> - Branch on incompatible policy ( e.g Main must be stable, but #2
> developer has unstable check-ins to submit )
> 
> Now if you only have 2 developers this may be overkill,  but if you
> work with larger dev teams of 20 or 50 or
> more developers and testers this may make sense.
> 
> 
> -Lee
> 
> 
> On 12/10/2010 12:04 PM, Eric at Lucii.org wrote:
> >-----BEGIN PGP SIGNED MESSAGE-----
> >Hash: SHA1
> >
> >New git user here.
> >
> >Project is in git (yay!)
> >
> >Two programmers are now going to work on it and I don't have a good idea of the
> >work flow.
> >
> >Programmer A works on the widgets, B works on the core
> >
> >Do we:
> >
> >   create two branches, "new widgets" and "updated core", in the main repository
> >   each programmer pulls the branch from
> >                   modifies, adds, commits,
> >                   pushes back to their branch in the main repository
> >     (Merge takes place in the main repository)
> >
> >- -OR-
> >
> >   each programmer pulls the master and creates a local branch
> >                   modifies, adds, commits,
> >                   merges the new branch into their master
> >                   pushes the revised master  back to the main repository
> >
> >- -OR-
> >
> >Am I thinking about this wrong?
> >
> >
> >Thanks
> >Eric
> >- -- #  Eric Lucas
> >#
> >#                "Oh, I have slipped the surly bond of earth
> >#                 And danced the skies on laughter-silvered wings...
> >#                                        -- John Gillespie Magee Jr
> >-----BEGIN PGP SIGNATURE-----
> >Version: GnuPG v1.4.10 (GNU/Linux)
> >Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
> >
> >iEYEARECAAYFAk0CXYYACgkQ2sGpvXQrZ/6TLwCfVsVdZcgTLE06Za6RWFc3BRHQ
> >hCQAn1TNj5YbmnHbSO9TTUbPDhnjSrnb
> >=Qy6A
> >-----END PGP SIGNATURE-----
> >___________________________________________________________________________
> >Philadelphia Linux Users Group         --        http://www.phillylinux.org
> >Announcements - http://lists.phillylinux.org/mailman/listinfo/plug-announce
> >General Discussion  --   http://lists.phillylinux.org/mailman/listinfo/plug
> 
> 
> -- 
> "Between subtle shading and the absence of light lies the nuance of iqlusion..."  - Kryptos
> 
> Lee Marzke,     lee@marzke.net                              http://marzke.net/lee/
> 

> begin:vcard
> fn:Lee Marzke
> n:Marzke;Lee
> org:4AERO
> adr:;;;Collegeville;PA;19426;US
> email;internet:lee@marzke.net
> title:Consultant
> tel;work:800 393 5217
> tel;fax:+1 484 348-2230
> tel;cell:+1 484 961-0369
> x-mozilla-html:TRUE
> url:http://4aero.com
> version:2.1
> end:vcard
> 

> ___________________________________________________________________________
> Philadelphia Linux Users Group         --        http://www.phillylinux.org
> Announcements - http://lists.phillylinux.org/mailman/listinfo/plug-announce
> General Discussion  --   http://lists.phillylinux.org/mailman/listinfo/plug

Attachment: signature.asc
Description: Digital signature

___________________________________________________________________________
Philadelphia Linux Users Group         --        http://www.phillylinux.org
Announcements - http://lists.phillylinux.org/mailman/listinfo/plug-announce
General Discussion  --   http://lists.phillylinux.org/mailman/listinfo/plug