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 ***
https://www.atlassian.com/git/workflows
  • 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)

http://www.slideshare.net/hbalagtas/simple-daily-workflow-with-git
  • a very good 'overview' of a lot of the common ways RCS can be used
http://agilewarrior.wordpress.com/2012/04/17/git-workflow/
  • 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.


Enjoy!

No comments: