I have a love-hate relationship with GIT. On the one hand, I can see that it is incredibly powerful and a hugely important suite of software for developers. What’s more, public repositories like GitHub have made that even more so. But then there are the times that it doesn’t play ball! I know that the fault lies with my own lack of understanding but because of this, it can feel terribly unforgiving.
So I began this video with some knowledge and experience, but clearly I am a beginner with much to learn about the intricacies about this form of version control. I wanted to state that up-front so that you can place any comments of views I make in context.
The video itself is a PeepCode production (acquired in 2013) which has a very different look and feel to some of the more recent Pluralsight courses; that’s to be expected. Having said that, the font, some of the music and colouring for title headings does remind me of the Playboy Empire (I saw a documentary…once!) and the 1970s. For me, things like that need to be almost invisible and seemless or they yank me out of the flow of what I am learning.
After talking about installing and configuring, there is a small segment on the basic commands, then a much larger one on branching. A little while later you cover remote repositories (very important when using things like GitHub), tracking and some details about working with SVN repositories.
The Parts I Liked
There were quite a few things I liked about this video. Geoffrey is obviously really knowledgeable about the topic; everything he said would happen, did, and he had no trouble explaining various facets of GIT.
It also focuses on the command line. I think that’s really important (even if you are used to using Windows), because it gives you greater skills and understanding when using windows based interfaces. Moreover, you can easily switch between MS Windows, MAC OS and Linux, since all provide shells.
The one hour video is also fairly complete in that it goes from having nothing, to utilising remote repositories. I think it therefore covers quite a lot of areas and in some respects, the important ones (but see below).
I was also pleased to learn about
gitk which is a tool I hadn’t heard of before. It’s basically a text based program for visualising the various branches and changes in your GIT repository.
The Parts That Didn’t Work So Well For Me
I think the biggest thing that made this less useful for me was how it was a little too geared towards the Mac and Ruby. It’s hard to be sure without knowing the context (and date) in which the video was first produced, but it would have been nice if it were more architecture neutral. Why do I worry about the Ruby stuff? Well, had he instead just used text files with sentences, I wouldn’t have been thinking…”Oh…what does that mean etc?” It’s a really small thing but again, I was instantly distracted by Ruby-like thoughts instead of remaining thinking about the GIT commands.
He mentions some aliases he uses and sets up, but I am glad that he (mostly) didn’t use them. I just want the commands as they are and can decide on my own aliases, should I want them, later.
Geoffrey went into quite a lot of detail about branching. You definitely need to because it is an important part of the process, but perhaps he went too far for an introduction? The parts about tracking felt quite deep for l’il ol’ me.
Lastly, I am not sure how many people would want to know about how to use GIT with SVN. In my opinion, that wasn’t very useful but for all I know, SVN was widely used when he began this video and therefore, a prominent consideration for adopters.
Overall, I guess I would say that there were lots of good information but some areas are too platform specific or not for wider consumption. In effect, I will be looking at some of the other introductory GIT videos to see how they fare.
Written by Stephen Moon
email: stephen at logicalmoon.com