Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Git rant, Part II - the word is the thing

Git rant, Part II - the word is the thing

Scheduled Pinned Locked Moved The Lounge
phpcomcollaborationhelptutorial
24 Posts 15 Posters 2 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Marc Clifton

    So I'm realizing that part of my problem is with the terminology. I expect "commit" to mean "save changes to the remote repository." I expect "checkout" to mean "get the changes from the remote repository." The fact that all the documentation I read about Git uses those same words, but with completely different meaning, leads to a huge amount of confusion and conflict with my mental picture of a VCS. To all the potential git authors / bloggers / developers out there: I have no problem with local repositories, staging areas, stashes, whatever, but PLEASE, use different words because they have different meanings. For example, "commit" in Git could be better described using the word "stage". Committing, the way non-git'ers think about it, could be better described using the phrase "push stage" or something similar. In fact, I don't think the word "commit" should be used at all with Git! Marc

    Latest Article: Intertexti - Resurrecting Apple's HyperCard
    My Blog

    P Offline
    P Offline
    pelto
    wrote on last edited by
    #21

    Well, let's compare SVN's commit command to git. In SVN a commit saves a set of changes to the repository. This is what you do in Git as well. The main difference is that in git your repository is located in your .git folder. Fetch and push in git is simply commands that you use to synch repositories. Git uses the correct terminology, keep in mind that there is no technical difference between a git repository on your development server and on your machine. You simply use them differently.

    1 Reply Last reply
    0
    • M Marc Clifton

      So I'm realizing that part of my problem is with the terminology. I expect "commit" to mean "save changes to the remote repository." I expect "checkout" to mean "get the changes from the remote repository." The fact that all the documentation I read about Git uses those same words, but with completely different meaning, leads to a huge amount of confusion and conflict with my mental picture of a VCS. To all the potential git authors / bloggers / developers out there: I have no problem with local repositories, staging areas, stashes, whatever, but PLEASE, use different words because they have different meanings. For example, "commit" in Git could be better described using the word "stage". Committing, the way non-git'ers think about it, could be better described using the phrase "push stage" or something similar. In fact, I don't think the word "commit" should be used at all with Git! Marc

      Latest Article: Intertexti - Resurrecting Apple's HyperCard
      My Blog

      L Offline
      L Offline
      Lost User
      wrote on last edited by
      #22

      I never used 'Git' because the name is stupid. I figure if they didn't bother to put some time into a good name the rest is probably no better.

      1 Reply Last reply
      0
      • M Marc Clifton

        So I'm realizing that part of my problem is with the terminology. I expect "commit" to mean "save changes to the remote repository." I expect "checkout" to mean "get the changes from the remote repository." The fact that all the documentation I read about Git uses those same words, but with completely different meaning, leads to a huge amount of confusion and conflict with my mental picture of a VCS. To all the potential git authors / bloggers / developers out there: I have no problem with local repositories, staging areas, stashes, whatever, but PLEASE, use different words because they have different meanings. For example, "commit" in Git could be better described using the word "stage". Committing, the way non-git'ers think about it, could be better described using the phrase "push stage" or something similar. In fact, I don't think the word "commit" should be used at all with Git! Marc

        Latest Article: Intertexti - Resurrecting Apple's HyperCard
        My Blog

        G Offline
        G Offline
        Gates VP
        wrote on last edited by
        #23

        Quote:

        I expect "commit" to mean "save changes to the remote repository." I expect "checkout" to mean "get the changes from the remote repository."

        Hmmm, I think you nailed the problem right here in your statement. You use the word "remote" twice. The premise is in git is that you are the repository.

        1 Reply Last reply
        0
        • M Marc Clifton

          So I'm realizing that part of my problem is with the terminology. I expect "commit" to mean "save changes to the remote repository." I expect "checkout" to mean "get the changes from the remote repository." The fact that all the documentation I read about Git uses those same words, but with completely different meaning, leads to a huge amount of confusion and conflict with my mental picture of a VCS. To all the potential git authors / bloggers / developers out there: I have no problem with local repositories, staging areas, stashes, whatever, but PLEASE, use different words because they have different meanings. For example, "commit" in Git could be better described using the word "stage". Committing, the way non-git'ers think about it, could be better described using the phrase "push stage" or something similar. In fact, I don't think the word "commit" should be used at all with Git! Marc

          Latest Article: Intertexti - Resurrecting Apple's HyperCard
          My Blog

          H Offline
          H Offline
          HuntrCkr
          wrote on last edited by
          #24

          Marc Clifton wrote:

          I expect "commit" to mean "save changes to the remote repository." I expect "checkout" to mean "get the changes from the remote repository."

          I think, as other have mentioned, this is where the problem lies. 'commit' and 'checkout' still mean the same thing as in SVN, it's just that you are working with a local repository, instead of the remote one. I have been using SubVersion for years, both at work and for my personal projects. I signed up for a GitHub account a while ago to check what all the fuss was about, and never really started using it. It was too complex and confusing. I felt just like you do ;) Recently, I started collaborating on another project which was hosted on GitHub. This forced me to learn the mechanics of Git. Took me quite a while, and I still have the Git Book[^] open in a browser window whenever I need to do anything more than a local commit, but I am starting to see the advantages... especially for multi-developer projects. Not sure if I would use it for solo projects, but then again unless I know I am never going to make this code available to anyone else, I might as well use something where I can easily manage outside contributions.

          1 Reply Last reply
          0
          Reply
          • Reply as topic
          Log in to reply
          • Oldest to Newest
          • Newest to Oldest
          • Most Votes


          • Login

          • Don't have an account? Register

          • Login or register to search.
          • First post
            Last post
          0
          • Categories
          • Recent
          • Tags
          • Popular
          • World
          • Users
          • Groups