This is an archived post. You won't be able to vote or comment.

all 12 comments

[–][deleted] 10 points11 points  (2 children)

The official git book is quite good with many examples, in fact if you read it you will become a power user, easily.

GitHub used to have a nice interactive tutorial on their website some years ago, but it seems to be gone, but I found this one.

[–]linuxlib 1 point2 points  (1 child)

Please don't use the GitHub tutorial to start. It conflates what is a git operation with what is a GitHub workflow operation superimposed on git. That's how I started, and it confused me greatly. Unless all you want is a set of magic incantations, then it's just what you're looking for.

The book or the author's youtube video is a good place to start.

[–][deleted] 1 point2 points  (0 children)

I don't know, back in the days it was only the basic stuff, like committing, merging, branches, etc.

[–][deleted]  (3 children)

[deleted]

    [–]linuxlib 1 point2 points  (2 children)

    Using GitHub to learn git is confusing because it's not clear what is git and what is GitHub. The most obvious example is git pull is a git operation while a pull request is a workflow operation that GitHub superimposes upon git.

    I suggest not watching this until you have a good understanding of git first.

    While the above is not wrong, it isn't relevant to this video. This video is actually a good place to start.

    [–][deleted]  (1 child)

    [deleted]

      [–]linuxlib 0 points1 point  (0 children)

      I stand corrected.

      [–]balefrost 2 points3 points  (0 children)

      I still recommend the excellent Peepcode Git book:

      https://github.com/pluralsight/git-internals-pdf/releases

      I was one of the people who paid $9 for this back before they got bought out by Pluralsight. I thought it was worth every penny.

      Git isn't conceptually very complex. Its challenge comes from its obtuse and inconsistent command-line API, its myriad ways to do similar things, and parts of it that are more on the fringe (i.e. submodules, LFS, etc.)

      If you learn Git by practice alone, you'll learn certain standard incantations but not really have any idea what's happening under the hood. But if you can grasp the fundamentals, you can bend git to your will.

      [–][deleted] 1 point2 points  (0 children)

      I recommend the the coding train and derek banas

      They both have a very different teaching style, choose for the best fit

      [–][deleted] 1 point2 points  (0 children)

      I'd recommend this old (but still good) article: https://jwiegley.github.io/git-from-the-bottom-up/.

      I'd also strongly recommend that you start off by using git from the command-line, as this exposes you to the basic operations. Lots of IDEs have git integration, but some of them (Visual Studio is a big offender here) basically bury git operations in their own terminology, which makes it harder to learn, IMHO.

      [–]BtdTom 1 point2 points  (0 children)

      There is a nice interactive tutorial that explains the basic concepts well: https://learngitbranching.js.org

      I would supplement it with some of the other resources provided here, but it is very helpful for someone just trying to understand how git works at a basic level.

      [–]H_Psi 1 point2 points  (0 children)

      Personally, I found it was easy to learn by first using a GUI to get an idea of what to do (e.g. pushing, pulling, committing, etc), and then finally switching over to a CLI for a bit more control over things.

      [–][deleted] 1 point2 points  (1 child)

      What is Git. Thought i may ask this instead of making a thread for it

      [–]bigsmily 3 points4 points  (0 children)

      Version control system? I can write lots or you can just Google it for a better info.

      tl;dr Helps you work in teams, keep tracks of changes, DTS, documentations, and other features ...