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. Rant - I hate GIT

Rant - I hate GIT

Scheduled Pinned Locked Moved The Lounge
csharpphpcomcollaborationtutorial
60 Posts 32 Posters 1 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.
  • L Lost User

    *cough* SmartGit[^] *cough*

    M Offline
    M Offline
    Marc Clifton
    wrote on last edited by
    #34

    Amrykid wrote:

    *cough* SmartGit[^] *cough*

    OK, that looks really useful. Much appreciated!!! Marc

    Reverse Engineering Legacy Applications
    How To Think Like a Functional Programmer
    My Blog
    Computational Types in C# and F#

    1 Reply Last reply
    0
    • M Marc Clifton

      This is one of the most pathetically complex things I've ever had to work with. It CONSTANTLY gets in the way of actually getting work done - I spend more time f***ing around with pushes and adds and branches and checkouts that I do actually making code changes!!! What a P.O.S. This diagram[^] near the bottom of the post says it all. Marc

      Reverse Engineering Legacy Applications
      How To Think Like a Functional Programmer
      My Blog
      Computational Types in C# and F#

      A Offline
      A Offline
      Adhir Ramjiawan
      wrote on last edited by
      #35

      Git and SVN solve different problems. You should use the one most suited to your current project/needs. SVN is a centralized whereas Git is a distributed. With SVN, you have a local working copy and with Git you have a local repository. It is for this reason it may seem that Git is overly complex. If you want to fork a repo and add features that will be different from the projects original goals then Git might just work best for you. If you want a group of individuals contributing to a common code base then SVN will be your best bet. :)

      1 Reply Last reply
      0
      • M Marc Clifton

        This is one of the most pathetically complex things I've ever had to work with. It CONSTANTLY gets in the way of actually getting work done - I spend more time f***ing around with pushes and adds and branches and checkouts that I do actually making code changes!!! What a P.O.S. This diagram[^] near the bottom of the post says it all. Marc

        Reverse Engineering Legacy Applications
        How To Think Like a Functional Programmer
        My Blog
        Computational Types in C# and F#

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

        I strongly disagree with you guys. I have working with Git and SVN for quite a while - in different environments and at different companies, and I prefer Git to SVN. At the end of the day - I found that Git is much stronger and you are able to do so much more with it that thing SVN. Yes sure to get to all the nice interesting stuff it takes some understanding - but if you think about it development is the same. If you think you will become a developer with only a bit of understanding of general concepts you are wrong. <-- this is especially to all the Graphic Designer who this that they are developers thanks to WordPress and Drupal :mad: Git is not all that complex and the features (pros) out way the learning curve (cons) I would say. I am not saying that there is something wrong with SVN or that Git is better - it different and its all dependent on what you want to do, and how much you are willing to learn. :doh: This is quite a good blog regarding Git and SVN:[why is git better than subversion]<-- don't judge the blog by the title In the defense of git:[10 things i love about git]

        "Always code as if the person who will maintain your code is a maniac serial killer that knows where you live."

        1 Reply Last reply
        0
        • P Pete OHanlon

          I'd have to agree though. I prefer Subversion. Once you get a handle on it, it's incredibly simple to use.

          I was brought up to respect my elders. I don't respect many people nowadays.
          CodeStash - Online Snippet Management | My blog | MoXAML PowerToys | Mole 2010 - debugging made easier

          D Offline
          D Offline
          dazfuller
          wrote on last edited by
          #37

          I love it personally. Don't get me wrong, I'm quite fond of Subversion as well but Git, Mercurial and Bazaar just fit so much better with the way I work.

          Eagles may soar, but weasels don't get sucked into jet engines

          1 Reply Last reply
          0
          • L lewax00

            Generally I don't need more than a pull to get the code, then commit and push to submit it. I've had a few projects with branches, but I wasn't switching frequently. Maybe I just haven't worked in a large enough project. I'm not sure where my scripts are at the moment though, I fear they may be on my now dead laptop, because that's where I've done most of my Git based work from, but most of them were either just a series of commands I performed routinely (e.g. go to root of git repo, commit all changes, push) with some parameters for branch names, comments, etc. Nothing extremely complicated. I only had a few more complex ones, like one that went back and branched a project I had gotten way ahead on for a class at each commit with a message containing a chapter number (fortunately, I was basically using a template for my commit messages) so I could just checkout the code for that chapter and submit it for grading, and a second to merge back some file adds when I realized I had forgot to add some files to some of the earlier commits rendering many of the older branches uncompilable, but those were one-time scripts that were faster to write than to do manually 20+ times. The second one could probably be modified into a decent merge script if I could find it.

            Marc Clifton wrote:

            I really have no patience for listening to how "it's my workflow."

            I probably could have worded that a bit better, I don't necessarily mean your personal workflow, but also the workflow that's been imposed upon you (similar to the reason why I can't make commits when I would prefer). I don't find myself changing branches often, but our VCS is so messed up that I have to keep a separate local workspace for each branch because switching between them somehow renders the workspace un-buildable, and even simple tasks like merging a change to another branch becomes a real pain. If I had to work in an environment where I was frequently branching and merging on this system I feel that I'd be in the same position, but not at the fault of the VCS system, the problem would be the poorly managed repository (to be honest, no one actually knows how to make it build, everyone just copies a working copy from someone else, checking it out from the repo doesn't work and no one has ever bother to figure out why and fix it...I suspect the reason is buried somewhere in the thousands of build errors that are just ignored).

            M Offline
            M Offline
            Mike Winiberg
            wrote on last edited by
            #38

            WHS!

            L 1 Reply Last reply
            0
            • M Marc Clifton

              This is one of the most pathetically complex things I've ever had to work with. It CONSTANTLY gets in the way of actually getting work done - I spend more time f***ing around with pushes and adds and branches and checkouts that I do actually making code changes!!! What a P.O.S. This diagram[^] near the bottom of the post says it all. Marc

              Reverse Engineering Legacy Applications
              How To Think Like a Functional Programmer
              My Blog
              Computational Types in C# and F#

              J Offline
              J Offline
              Jonathan C Dickinson
              wrote on last edited by
              #39

              The problem with Git is that Linus has been quoted in saying something along the lines of "Git isn't a tool [solution], it's a framework." This lead me to believe that you should really have a few scripts set up that do the heavy-lifting for you. SVN is a tool, it does what it is designed for and nothing more: by using SVN you subscribe the workflow imposed by the SVN developers and have no versatility, where Git can be jimmied into basically any workflow. GitHub for Windows also gets rid of a lot of the pain (really, one-click pushing and pulling) - and it isn't only for GitHub repositories[^]. In a similar light, Microsoft have released the GitHub integration for Visual Studio and I assume it will be of the same caliber (read: simplicity) as TFS. I only drop to the CLI when I really need to these days, and haven't needed to in a couple of months: the Windows tooling is great for it, if you know it's there.

              He who asks a question is a fool for five minutes. He who does not ask a question remains a fool forever. [Chinese Proverb] Jonathan C Dickinson (C# Software Engineer)

              1 Reply Last reply
              0
              • M Marc Clifton

                This is one of the most pathetically complex things I've ever had to work with. It CONSTANTLY gets in the way of actually getting work done - I spend more time f***ing around with pushes and adds and branches and checkouts that I do actually making code changes!!! What a P.O.S. This diagram[^] near the bottom of the post says it all. Marc

                Reverse Engineering Legacy Applications
                How To Think Like a Functional Programmer
                My Blog
                Computational Types in C# and F#

                S Offline
                S Offline
                Stefan_Lang
                wrote on last edited by
                #40

                The biggest potential problem with version control is when people don't use it frequently. People won't use frequently what isn't easy to understand and use. For that reason, if for no other, Subversion >> GIT. If you're working on your own, or within a team where every single member understands how and loves to use GIT, then all the power to you. But if you have only one member in your team that isn't comfortable with it, you're going to have problems, sooner or later.

                1 Reply Last reply
                0
                • L lewax00

                  Sounds more like your workflow is the problem to me. I tend to script any repeated tasks with more than a couple steps, so my workflow generally becomes: get latest code -> make changes -> run script to make commits, pushes, etc. which is basically the same as using anything else. Personally, I wish we used Git or Mercurial here, because our commit process strongly discourages putting partially complete things in the repository, and I'd like to have some of the benefits of version control (especially revert) when I'm working on something larger that has be made as one commit to the repository. I wonder if there's a way to set up Git locally to push to CVS...

                  D Offline
                  D Offline
                  Dan Neely
                  wrote on last edited by
                  #41

                  There are Git/Mercurial to SVN bridge tools; you could run one of hte former locally and just push your changes to SVN once you have it finished.

                  Did you ever see history portrayed as an old man with a wise brow and pulseless heart, waging all things in the balance of reason? Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful? --Zachris Topelius Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies. -- Sarah Hoyt

                  1 Reply Last reply
                  0
                  • M Marc Clifton

                    Rutvik Dave wrote:

                    Mercurial was very good,

                    Never used it, but that's what I've heard too. Then again, that's what I heard about Git. :( Marc

                    Reverse Engineering Legacy Applications
                    How To Think Like a Functional Programmer
                    My Blog
                    Computational Types in C# and F#

                    D Offline
                    D Offline
                    Dan Neely
                    wrote on last edited by
                    #42

                    Marc Clifton wrote:

                    Rutvik Dave wrote:

                    Mercurial was very good,

                    Never used it, but that's what I've heard too. Then again, that's what I heard about Git. :(

                    I've used Mercurial for a few personal projects and never had any problems. Before starting I read a bunch of Git vs Hg posts and when the two differed found myself in near universal agreement that Hg worked the way I'd expect it to and Git was designed by a bunch of gits. :-\

                    Did you ever see history portrayed as an old man with a wise brow and pulseless heart, waging all things in the balance of reason? Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful? --Zachris Topelius Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies. -- Sarah Hoyt

                    1 Reply Last reply
                    0
                    • M Marc Clifton

                      This is one of the most pathetically complex things I've ever had to work with. It CONSTANTLY gets in the way of actually getting work done - I spend more time f***ing around with pushes and adds and branches and checkouts that I do actually making code changes!!! What a P.O.S. This diagram[^] near the bottom of the post says it all. Marc

                      Reverse Engineering Legacy Applications
                      How To Think Like a Functional Programmer
                      My Blog
                      Computational Types in C# and F#

                      B Offline
                      B Offline
                      Bob1000
                      wrote on last edited by
                      #43

                      So I'm not alone - thanks for making me feel better about that! Overall I find most source control a pain (and worry), when they should make life easier. Maybe it's a lack of trust on my part, but I still do a time stamped batch file backup of the source irrespective of using a source control (not GIT!) As for GIT, I just find it too complicated - which means it has a low trust rating in my book, if you can't easily understand a system how can you trust it? As one of our engineers said it must have been named after the characteristics of one (or all) of its designers!

                      1 Reply Last reply
                      0
                      • M Marc Clifton

                        Nagy Vilmos wrote:

                        Good news Marc, there is help[^].

                        In my case, no, because it's a Ruby on Rails app, and I'm using RubyMine as the editor (pretty slick product) but it's figuring out RM's support of Git without first understanding how to use Git from the command line is not a good idea. Once I get the command line stuff under my belt, then I can poke around RM's GUI support and see what it's doing (it has a nice display of what it's telling Git to do.) Marc

                        Reverse Engineering Legacy Applications
                        How To Think Like a Functional Programmer
                        My Blog
                        Computational Types in C# and F#

                        R Offline
                        R Offline
                        Rob Grainger
                        wrote on last edited by
                        #44

                        You're probably already aware, but justin case: Ruby on Rails vulnerability[^]

                        M 1 Reply Last reply
                        0
                        • R Rob Grainger

                          You're probably already aware, but justin case: Ruby on Rails vulnerability[^]

                          M Offline
                          M Offline
                          Marc Clifton
                          wrote on last edited by
                          #45

                          Rob Grainger wrote:

                          Ruby on Rails vulnerability[^]

                          Yes, thank you. I think CP's Insider News posted about this a couple weeks ago. Marc

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

                          1 Reply Last reply
                          0
                          • M Mike Winiberg

                            WHS!

                            L Offline
                            L Offline
                            lewax00
                            wrote on last edited by
                            #46

                            ...Windows Home Server? Sorry, you lost me on that one... :doh:

                            M 1 Reply Last reply
                            0
                            • M Marc Clifton

                              This is one of the most pathetically complex things I've ever had to work with. It CONSTANTLY gets in the way of actually getting work done - I spend more time f***ing around with pushes and adds and branches and checkouts that I do actually making code changes!!! What a P.O.S. This diagram[^] near the bottom of the post says it all. Marc

                              Reverse Engineering Legacy Applications
                              How To Think Like a Functional Programmer
                              My Blog
                              Computational Types in C# and F#

                              R Offline
                              R Offline
                              RafagaX
                              wrote on last edited by
                              #47

                              Source Control? We don't need stinkin' source control... ;P Seriously, it's my understanding that git is meant to manage multiple branches easily, probably that's why is overly complex for simpler tasks like working in a one shared source tree.

                              CEO at: - Rafaga Systems - Para Facturas - Modern Components for the moment...

                              M 1 Reply Last reply
                              0
                              • M Marc Clifton

                                lewax00 wrote:

                                get latest code

                                which involves checkouts, fetches, and pulls, none of which make any sense to me in my angry state. I want to simply check out the latest version. How hard should that be?

                                lewax00 wrote:

                                run script to make commits, pushes, etc.

                                The fact that you have SCRIPTS to do those things shows how complex they are. Commit to staging area. Push to remote. Rebase, pull, checkout, WTF??? Again, a simple "commit the changes to the repository" would be sufficient, and again, because I'm so angry that every time I try to start some productive work I end up first spending an hour (YES, A F***ING HOUR) fighting Git, I really have no patience for listening to how "it's my workflow." Maybe tomorrow I'll be in a better mood. Care to share your scripts? I might learn something! Marc

                                Reverse Engineering Legacy Applications
                                How To Think Like a Functional Programmer
                                My Blog
                                Computational Types in C# and F#

                                K Offline
                                K Offline
                                kelton5020
                                wrote on last edited by
                                #48

                                This just shows that your problem isn't really with git, it's with you lack of knowledge of it. I'd imagine you're kind of a green horn to the technology, and you haven't quite figured out how all of these things actually benefit you, if you take a moment to learn them.

                                M 1 Reply Last reply
                                0
                                • L lewax00

                                  ...Windows Home Server? Sorry, you lost me on that one... :doh:

                                  M Offline
                                  M Offline
                                  Mike Winiberg
                                  wrote on last edited by
                                  #49

                                  What He Said 8)

                                  1 Reply Last reply
                                  0
                                  • K kelton5020

                                    This just shows that your problem isn't really with git, it's with you lack of knowledge of it. I'd imagine you're kind of a green horn to the technology, and you haven't quite figured out how all of these things actually benefit you, if you take a moment to learn them.

                                    M Offline
                                    M Offline
                                    Marc Clifton
                                    wrote on last edited by
                                    #50

                                    kelton5020 wrote:

                                    I'd imagine you're kind of a green horn to the technology, and you haven't quite figured out how all of these things actually benefit you, if you take a moment to learn them.

                                    Oh, I'm certainly green when it comes to Git. As to version control, I've used it since the days of RCS in DOS. Marc

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

                                    K 1 Reply Last reply
                                    0
                                    • M Marc Clifton

                                      kelton5020 wrote:

                                      I'd imagine you're kind of a green horn to the technology, and you haven't quite figured out how all of these things actually benefit you, if you take a moment to learn them.

                                      Oh, I'm certainly green when it comes to Git. As to version control, I've used it since the days of RCS in DOS. Marc

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

                                      K Offline
                                      K Offline
                                      kelton5020
                                      wrote on last edited by
                                      #51

                                      Well if you really have, you wouldn't be complaining about not knowing/understanding the terminology :p

                                      1 Reply Last reply
                                      0
                                      • R RafagaX

                                        Source Control? We don't need stinkin' source control... ;P Seriously, it's my understanding that git is meant to manage multiple branches easily, probably that's why is overly complex for simpler tasks like working in a one shared source tree.

                                        CEO at: - Rafaga Systems - Para Facturas - Modern Components for the moment...

                                        M Offline
                                        M Offline
                                        Marc Clifton
                                        wrote on last edited by
                                        #52

                                        RafagaX wrote:

                                        it's my understanding that git is meant to manage multiple branches easily, probably that's why is overly complex for simpler tasks like working in a one shared source tree.

                                        Yes, I would agree. I can see where my idea of working with revision control is different. I rarely would branch my SVN tree, and the idea of keeping local a local repository with all of the local branches and changes on my computer (until they are pushed onto the remote repository) I can see as possibly beneficial but overly complex, and frankly, scares me a bit with regards to losing my work due to a disk failure or the complexity of merging my work if I fall too far behind everyone else's branches. However, having read something recently, I am beginning to change the mental picture I have been holding - namely, that there is also a local repository as well as a remote repository. That helps me understand why a commit doesn't actually get seen on the remote server until a push happens. Marc

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

                                        1 Reply Last reply
                                        0
                                        • M Marc Clifton

                                          This is one of the most pathetically complex things I've ever had to work with. It CONSTANTLY gets in the way of actually getting work done - I spend more time f***ing around with pushes and adds and branches and checkouts that I do actually making code changes!!! What a P.O.S. This diagram[^] near the bottom of the post says it all. Marc

                                          Reverse Engineering Legacy Applications
                                          How To Think Like a Functional Programmer
                                          My Blog
                                          Computational Types in C# and F#

                                          7 Offline
                                          7 Offline
                                          77465
                                          wrote on last edited by
                                          #53

                                          It looks like you just do not need it. JIT has just 2 strong points - distributed architecture and conflict resolution. You use "I" and not "we" in the post, so it is unlikely that you can benefit from either. Besides these 2 advantages, GIT still retains its nature of a quick hack. I guess this happens because the focus is still on making things possible as opposed to making them easy or forgiving.

                                          M 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