Tuesday, November 5, 2013

[ Git ]

Subject: [ Git ]

  • note: originally emailed 11/05/2013 and sanitized for public consumption
  • sidenote: posting here so i can lead people here whenever they ask me about this stuff...

Git is an extremely flexible and powerful revision control system.  PerForce was my #1 fav until Git showed up.

Anyways, we had a new contractor start up here with us -- but has no CVS access.  So I've setup a dual RCS configuration where I would manually merge between our team's updates to CVS with the contractor's GIT repository.

Quite possibility the easiest I have ever encountered.  I would love to see the whole organization move to GIT.

That said, I have collected a number of links to get our contractor up to speed with GIT.

*** must reads ***
  • branching workflow (very relevant to this current thread -- and please see the attached note: it was in my drafts folder -- it didn't seem appropriate to send it at the time, whereas now, it is obvious)

  • a very good 'overview' of a lot of the common ways RCS can be used
  • an example of why there's no 'central repository' in the GIT universe (so the excuse of "we don't have access to GIT to upload our changes -- we're stuck in the water!!!" isn't really true)

The following are a little more terse and detailed, I highly recommend spending a few moments whenever you can:

My most favorite feature of GIT is the "stash" command
  • you can "stash" you current work (i.e. a temp checkin to your local GIT depo)
  • which will _then_ revert your changes to your latest checkout (previous to your "changes")
  • do your work
  • checkin (commit)
  • and then "unstash" your work-in-progress, continuing as if nothing changed

There is no limit to the number of stashes you can do...

Btw, the VIM fugitive plugin is amazing.


No comments: