Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?
 
PerlMonks  

Git vs Hg or GitHub vs Bitbucket for Perl projects

by Burak (Chaplain)
on Apr 26, 2009 at 15:00 UTC ( [id://760132]=perlmeditation: print w/replies, xml ) Need Help??

Git & GitHub seems to get all the attention in the Perl world nowadays. Since perl itself is on git, a lot of people are attracted to Git & GitHub (or so I think). So, why do you choose /Git(hub)?/i over Mercurial/Bitbucket or vice versa? Is it because
  • You are a cargo cult follower
  • perl is on Git, so It's logical to use git for my own things
  • All the CPAN celebrities are on GitHub
  • GitHub already built a Perl community in it why bother with other cr@p? I can't live alone
  • There is this big hype about git
  • Bitbucket is an exact copy of GitHub. Lame lame lame!
  • Git is faster
  • Git has more features
  • Hg has more features
  • Git has no native (yeah yeah I know that msysgit thing) Windows port. So, hg is better
  • You like hg commands
  • Something else? Please explain
Well, you can also explain why Git & Hg both sux if you're using another VCS for your projects :) Me? I choose Hg mainly because Git lacks native Windows port and Hg seemed more familiar after a long Perforce experience.
  • Comment on Git vs Hg or GitHub vs Bitbucket for Perl projects

Replies are listed 'Best First'.
Re: Git vs Hg or GitHub vs Bitbucket for Perl projects
by moritz (Cardinal) on Apr 26, 2009 at 17:57 UTC
    I was a git skeptic for very long, because I couldn't understand what the heck it is doing, or how I could do stuff with it.

    Then rakudo switched to git, and I was forced to learn it to some extent. Now I'm sold to it, because it does all the offline working that I need, local branching, diffs and blame annotations in no time (that SVN would only give me with internet access and a minute of waiting), rebase etc.

    I do see that it's rather confusing at first, and not very easy to learn.

    I have not experimented with Mercurial or any other distributed version control system (except a bit playing with darcs and svk, both which didn't really appeal to me at that time) so I can't really comment on them, but I'm pretty sure that distributed version control systems are the way to go - which one exactly is really up to personal preference.

      ++. I've had--am having; not quite to cruising speed yet--the same experience. Not easy to jump into. Really not. "WTF are they talking about, Git sucks," not. But the more I get it, the more I really like it. Powerful and quick once you get over some of the conceptual differences from SVN/CVS. It's also been around long enough at this point that most "How do I..." Google queries turn up an answer from someone who had the same hurdle and got over it. I don't know Hg but I do know what little of Perforce I was once forced to use made me :(

        I don't know Hg but I do know what little of Perforce I was once forced to use made me :(
        Yeah, I must admit that Perforce is not that friendly. I did a lot of work related to it like writing some automatic branching stuff around p4 commands for example. But I think it'll be hard to do anything complicated with the help of `p4 help` or Googling around. Luckily we had the perforce book in the office. Does not have a 100% coverage but good enough :)
Re: Git vs Hg or GitHub vs Bitbucket for Perl projects
by samtregar (Abbot) on Apr 26, 2009 at 17:23 UTC
    I'm still using SVN for the simple reason that version-control is the last thing I want to experiment with. It's my last line of defense against the disaster of losing work. I disregarded this a while back and tried SVK and I paid the price big-time when it ate a bunch of code I'd just written.

    Of course if I wanted to contribute to a project that was already using Git or Hg I'd be willing to give a try, but for my own projects I prefer something maximally reliable.

    -sam

      I'm using SVN all the time but I gave git a try and the ease with which you change any working directory on any machine in a repository (allowing reverting, etc) is such a huge plus I decided to switch to git for all new projects.
Re: Git vs Hg or GitHub vs Bitbucket for Perl projects
by JavaFan (Canon) on Apr 26, 2009 at 21:06 UTC
    $WORK started using it (after looking at SVN and Hg as well). I liked it, so I started using it for my personal projects as well. Then Perl switched.

    I don't claim Git is better than SVN or Hg (as I have never tried them). But $WORK uses Git; it works well at $WORK; it does what I want for my personal projects, so I have no reason to learn something else as well.

    So, I guess my reason is "Since I already know Git, and Git does what I need". Oh, and I probably don't use more than 10% of the features Git has, so whether Git or Hg (or SVN) has more features isn't interesting for me anyway. If I had to learn SVN or Hg for $WORK instead of Git, I'd probably be using it now.

Re: Git vs Hg or GitHub vs Bitbucket for Perl projects
by ggvaidya (Pilgrim) on Apr 27, 2009 at 04:37 UTC

    I really haven't experimented with anything but Git yet, and that's because:

    • git-svn works really nicely, so it fairly easy to work in Git with $WORK's svn server.
    • GitHub is brilliant. The UI is really nice and really helps explain Git's branching system of commits to people new to branching repositories.
    • Having code I want to poke around with already up on GitHub is very convenient. Apart from Rakudo and perl6-examples, Test-More and Email-Sender are already there, and ripe for the branching.

    My only complaint: unlike SVN, TortoiseGit isn't good enough for non-programmer usage just yet. The Windows Git GUI is much better, but with TortoiseSVN my non-programming workmates immediately understood how it worked. Git, with all its local/remote branching and whatnot, is a whole lot more complicated. Still, easy branching is an advantage hard to overlook, so I'll stick with Git and GitHub for now.

Re: Git vs Hg or GitHub vs Bitbucket for Perl projects
by educated_foo (Vicar) on Apr 27, 2009 at 15:12 UTC
    I use git because it's used by a few projects I follow, and also because git-svn works well and I need to interact with people who use SVN. Plus, git has branches that aren't copies, which are the way I am used to working. I also use repo.or.cz instead of GitHub, because I just need a mirror for open source software, not an overpriced pile of RoundRects.

    That said, the various distributed VCs are more or less equivalent. Choose the one that's cheap, fast, and convenient to you.

Re: Git vs Hg or GitHub vs Bitbucket for Perl projects
by mikeraz (Friar) on Apr 28, 2009 at 17:25 UTC

    I use git because it maps to my internal logic nicely. Repeated attempts in the past to work with $version_control_system_dujour always fizzled. Git just works.

    Perhaps credit is due to those other systems for getting me familiar with the concepts.


    Be Appropriate && Follow Your Curiosity
Re: Git vs Hg or GitHub vs Bitbucket for Perl projects
by jethro (Monsignor) on May 04, 2009 at 00:26 UTC
    I had used svn before but could never warm myself to it because (at least on the command line) svn was never as easy to use as I had expected. Not once did I get the impression that I had benefitted from using svn.

    So when by chance I listened to Randall Schwartz git talk I "fell in love" with git. This might be because Randall is just a good salesman or maybe because git is really that good.

    Since then I have tested and played with git and read a lot of man pages and other documentation about it and I found that
    1) I still love it and svn isn't in the same league really
    2) in many ways git is easier than svn and if a beginner reads the tutorials first instead of getting lost in plumbing man pages he might come to the same conclusion. I have a much deeper understanding of git than I ever had with svn
    3) I would probably like hg or bazaar too, but git already nailed the coffin for me. At the moment I see no reason to look further.

Re: Git vs Hg or GitHub vs Bitbucket for Perl projects
by wazoox (Prior) on Apr 27, 2009 at 10:49 UTC
    Git has no native (yeah yeah I know that msysgit thing) Windows port. So, hg is better.

    You've got it backwards : git has no native windows support and it's a huge plus, it rules out windows users altogether :)

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlmeditation [id://760132]
Approved by ww
Front-paged by Arunbear
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others about the Monastery: (4)
As of 2024-04-20 00:37 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found