Collection of Git Resources

Anything related in any way to game development as a whole is welcome here. Tell us about your game, grace us with your project, show us your new YouTube video, etc.

Moderator: PC Supremacists

Post Reply
User avatar
TheBuzzSaw
Chaos Rift Junior
Chaos Rift Junior
Posts: 310
Joined: Wed Dec 02, 2009 3:55 pm
Current Project: Paroxysm
Favorite Gaming Platforms: PC
Programming Language of Choice: C++
Contact:

Collection of Git Resources

Post by TheBuzzSaw »

I recommend starting with this video. It doesn't matter whether you are a Git virgin or have been using Git for months. This video does an excellent job of describing "the way Git thinks" and how it works. It is a fantastic introduction. Set aside some time as it is over an hour long. ^_^

As mentioned in that video above, there is a free book on learning Git (written by the guy who presented in that vid). There is a physical version, but the content is under a Creative Commons License. So, you can view/download it in just about any format. (I even downloaded the DRM-free .mobi format for my Kindle reader.)

If you want to understand Git at an even more technical level, this video does an excellent job. You learn more about Git's concepts of 'blobs' and 'trees' to prevent redundant data and whatnot.

And lastly, if you can stand listening to Linus continue being an arrogant buffoon, here is his Google Techtalk where he introduces Git at an extremely conceptual level. (He barely touches how Git actually works. He more just introduces the concept of DVCS to the world.)

So, here is an abridged version of my post:

VIDEO -- Introduction to Git with Scott Chacon of GitHub
EBOOK -- Pro Git (available in HTML, PDF, MOBI, and EPUB)
VIDEO -- Randal Schwartz on Git (technical overview of Git's objects)
VIDEO -- Tech Talk: Linus Torvalds on git (overview of why Git was created)

--- --- ---

If you want to install Git on Windows, I strongly recommend msysgit. There are many confusing download options. I recommend choosing the top always. The latest as of this post is this one. Whenever you need to use Git, just fire up Git Bash, and you're off! The nice thing about this msys terminal is that you have UNIX freedom.

If you're in Linux, just grab Git from the repository. If you're in OSX, I cannot remember how I installed it to be honest. (avancs, help me out.) I do know that Xcode comes with Git integration now. :)

--- --- ---

The bottom line is that distributed version control systems (DVCS) are superior to centralized version control systems in almost every way. I used to be an avid Subversion (SVN) user/fan, and I was very leery of how Git operated. As Scott says in his introductory video, it really helps to just forget everything you know about version control. Git (and whatever other DVCS out there) makes no attempt to "improve upon" the existing version control paradigm. It's a completely new way to approach version control. It takes a while to unlearn what you have learned, but it is worth it in the long run.
User avatar
dandymcgee
ES Beta Backer
ES Beta Backer
Posts: 4709
Joined: Tue Apr 29, 2008 3:24 pm
Current Project: https://github.com/dbechrd/RicoTech
Favorite Gaming Platforms: NES, Sega Genesis, PS2, PC
Programming Language of Choice: C
Location: San Francisco
Contact:

Re: Collection of Git Resources

Post by dandymcgee »

Thank you for taking the time to post these resources! I've seen Linus' Google tech talk, and found it comical as well as informative as to how distributed control systems are meant to be used. I think I'll watch Scott's talk next.
Falco Girgis wrote:It is imperative that I can broadcast my narcissistic commit strings to the Twitter! Tweet Tweet, bitches! :twisted:
User avatar
TheBuzzSaw
Chaos Rift Junior
Chaos Rift Junior
Posts: 310
Joined: Wed Dec 02, 2009 3:55 pm
Current Project: Paroxysm
Favorite Gaming Platforms: PC
Programming Language of Choice: C++
Contact:

Re: Collection of Git Resources

Post by TheBuzzSaw »

I love how every single clone I make is a complete backup, and I can setup another server at any time I choose. ^_^
User avatar
avansc
Respected Programmer
Respected Programmer
Posts: 1708
Joined: Sun Nov 02, 2008 6:29 pm

Re: Collection of Git Resources

Post by avansc »

Does anyone really have 90 min to watch a video about git???

also, don't forget to check out git-o-lite https://github.com/sitaramc/gitolite by far the best and easiest way to set up a server with authentication.
Some person, "I have a black belt in karate"
Dad, "Yea well I have a fan belt in street fighting"
User avatar
short
ES Beta Backer
ES Beta Backer
Posts: 548
Joined: Thu Apr 30, 2009 2:22 am
Current Project: c++, c
Favorite Gaming Platforms: SNES, PS2, SNES, SNES, PC NES
Programming Language of Choice: c, c++
Location: Oregon, US

Re: Collection of Git Resources

Post by short »

Thank you for posting this!
My github repository contains the project I am currently working on,
link: https://github.com/bjadamson
User avatar
TheBuzzSaw
Chaos Rift Junior
Chaos Rift Junior
Posts: 310
Joined: Wed Dec 02, 2009 3:55 pm
Current Project: Paroxysm
Favorite Gaming Platforms: PC
Programming Language of Choice: C++
Contact:

Re: Collection of Git Resources

Post by TheBuzzSaw »

If you're serious about learning Git, 90 minutes is a small price to pay.
User avatar
Nokurn
Chaos Rift Regular
Chaos Rift Regular
Posts: 164
Joined: Mon Jan 31, 2011 12:08 pm
Favorite Gaming Platforms: PC, SNES, Dreamcast, PS2, N64
Programming Language of Choice: Proper C++
Location: Southern California
Contact:

Re: Collection of Git Resources

Post by Nokurn »

avansc wrote:Does anyone really have 90 min to watch a video about git???

also, don't forget to check out git-o-lite https://github.com/sitaramc/gitolite by far the best and easiest way to set up a server with authentication.
+1 for gitolite. Took like 5 min to install and configure, works great on a shared host (DreamHost, in this case), and doing admin from a git repo is pretty cool.
User avatar
dandymcgee
ES Beta Backer
ES Beta Backer
Posts: 4709
Joined: Tue Apr 29, 2008 3:24 pm
Current Project: https://github.com/dbechrd/RicoTech
Favorite Gaming Platforms: NES, Sega Genesis, PS2, PC
Programming Language of Choice: C
Location: San Francisco
Contact:

Re: Collection of Git Resources

Post by dandymcgee »

avansc wrote:Does anyone really have 90 min to watch a video about git???
I can think of a thousand 90 minute videos I'd less rather watch.
Falco Girgis wrote:It is imperative that I can broadcast my narcissistic commit strings to the Twitter! Tweet Tweet, bitches! :twisted:
User avatar
TheBuzzSaw
Chaos Rift Junior
Chaos Rift Junior
Posts: 310
Joined: Wed Dec 02, 2009 3:55 pm
Current Project: Paroxysm
Favorite Gaming Platforms: PC
Programming Language of Choice: C++
Contact:

Re: Collection of Git Resources

Post by TheBuzzSaw »

Ha! Found another funny intro site for Git.

http://think-like-a-git.net/
User avatar
short
ES Beta Backer
ES Beta Backer
Posts: 548
Joined: Thu Apr 30, 2009 2:22 am
Current Project: c++, c
Favorite Gaming Platforms: SNES, PS2, SNES, SNES, PC NES
Programming Language of Choice: c, c++
Location: Oregon, US

Re: Collection of Git Resources

Post by short »

I'd just like to say, I watched the "90 minute video" and it really transformed my understanding of how git works. I really recommend if you don't have a solid foundation in git that you MAKE the time to watch it.
My github repository contains the project I am currently working on,
link: https://github.com/bjadamson
User avatar
TheBuzzSaw
Chaos Rift Junior
Chaos Rift Junior
Posts: 310
Joined: Wed Dec 02, 2009 3:55 pm
Current Project: Paroxysm
Favorite Gaming Platforms: PC
Programming Language of Choice: C++
Contact:

Re: Collection of Git Resources

Post by TheBuzzSaw »

short wrote:I'd just like to say, I watched the "90 minute video" and it really transformed my understanding of how git works. I really recommend if you don't have a solid foundation in git that you MAKE the time to watch it.
I KNOW, RIGHT? For me, it finally made me stop saying, "I used to do X, Y, and Z in SVN. How do I stay in my comfort zone while using Git?"
Post Reply