Stef,
My introduction to git came largely from reading "A
successful Git branching model"[1]. I tried to think how to
map this particular git work flow to Metacello and long story
short, decided to adapt Metacello to git:)
It is also probably worth reading "What is a good Git
workflow?"[2]. This article is more about how to use GitHub,
but frankly the appeal of git to me goes hand in hand with a
good collaboration model and GitHub does a good job supporting
that.
The first time you read these articles don't pay attention
to the details, but try to get the overall flow/functionality
and try to draw parallels to the work the you do with
Monticello and Metacello ... let the thoughts marinate, ask
some questions.
"Pro Git"[3] is a book/web site and would recommend that
you take a run through Chapter 2[4] to get a taste of git in
action at the command line and virtually everything that you
need to know to work on your own with git is covered in this
chapter. Chapter 3[5] is on the nitty gritty of branching ...
but again at this stage you want to just skim through the docs
and get a feel of what is possible ... if something doesn't
make sense at this stage ...��
ignore it:)
Now go back to the ��"What is a good Git workflow?"[2] paper
and read it in detail ... if you see a command/operation that
you don't understand google it or look it up in "Pro Git" or
ask questions ...
Basically I am recommending that for your first foray into
Git and Smalltalk you will be trying to follow the����"What is a
good Git workflow?"[2] model.
FileTree allows you save Monticello packages into a git
repository, but with FileTree you have to do all of the git
commands from the command line.��
I'll let Thierry Goubier describe GitFileTree because I
think it that package does a bit of remote control ....
I think that it is possible to most if not all of the git
work support into the Smalltalk development environment ... I
am doing that for GemStone with tODE[6] and I do find myself
going to the go to the command line much less frequently ...
but in tODE I have built a git merge tool and a git diff tool
... you can get the git history of a method from the browser,
etc.��
Without a relatively high degree of tool integration it can
be clunky to use git ... I am very willing to share what I've
done/learned in tODE with Pharo tool builders and of course I
think Thierry Goubier has actually been ahead of me in several
different areas ...
Of course there are other git workflows out there and other
git collaboration sites besides GitHub...but is worth keeping
things simple at first (I think) and when you have mastered
git/github basics both personally and from a tool level, then
it is a perfectly good time to start looking at other
workflows and tools, because then you are able to make
informed judgements ...
HTH,
Dale