Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
crazyfish
Sep 19, 2002

Git also shipped with a lot of features that Mercurial lacked but gradually made their way in as Mercurial evolved.

Adbot
ADBOT LOVES YOU

Doc Hawkins
Jun 15, 2010

Dashing? But I'm not even moving!


Git also is a bit harder to get working on windows, so you can sort the dev wheat from the dev chaff more easily. :smuggo:

Thermopyle
Jul 1, 2003

...the stupid are cocksure while the intelligent are full of doubt. —Bertrand Russell

AFAICT, the real advantage to using git is not that it's vastly superior to Mercurial from a technical/features standpoint, but that GitHub is awesome and a shitton of open source projects use git, so it's got a lot more exposure on the web.

Vulture Culture
Jul 14, 2003

I was never enjoying it. I only eat it for the nutrients.

Doc Hawkins posted:

Git also is a bit harder to get working on windows, so you can sort the dev wheat from the dev chaff more easily. :smuggo:
uh

uXs
May 3, 2005

Mark it zero!

Misogynist posted:

uh

This always comes up and it's always wrong.

No Safe Word
Feb 26, 2005

Yeah msysgit is not the same as mercurial in terms of "works well on Windows", sorry.

Plorkyeran
Mar 22, 2007

To Escape The Shackles Of The Old Forums, We Must Reject The Tribal Negativity He Endorsed
still don't see what's so hard about running an installer and clicking next a few times

shrughes
Oct 11, 2008

(call/cc call/cc)
I use git on windows, I can open up a git bash shell or use the git gui and it works fine. What's the big fuss all about?

epswing
Nov 4, 2003

Soiled Meat
I haven't used the git gui in 6 months, but if nothing's changed I think tortoisehg knocks it out of the park.

(P.S. I'm not saying the git gui doesn't work fine.)

E: Oh poo poo I just participated in a holy war please ignore this post entirely :ohdear:

epswing fucked around with this message at 20:06 on Aug 17, 2011

shrughes
Oct 11, 2008

(call/cc call/cc)

epswing posted:

I haven't used the git gui in 6 months, but if nothing's changed I think tortoisehg knocks it out of the park.

How dare you attack my self-image by suggesting that there's software I use that works better on Windows!

Smugdog Millionaire
Sep 14, 2002

8) Blame Icefrog
TortoiseSVN is still 5x-50x slicker than either TortoiseGit or TortoiseHG, so I guess everyone should probably be using SVN if they're developing on Windows.

uXs
May 3, 2005

Mark it zero!

Smugdog Millionaire posted:

TortoiseSVN is still 5x-50x slicker than either TortoiseGit or TortoiseHG, so I guess everyone should probably be using SVN if they're developing on Windows.

Have you used TortoiseHg recently? Not attacking you or anything, just curious.

Vulture Culture
Jul 14, 2003

I was never enjoying it. I only eat it for the nutrients.

No Safe Word posted:

Yeah msysgit is not the same as mercurial in terms of "works well on Windows", sorry.
Performance isn't good, but I haven't run into any other problems. Qualify this statement, please.

epswing
Nov 4, 2003

Soiled Meat

Misogynist posted:

Performance isn't good, but I haven't run into any other problems. Qualify this statement, please.

I think you just did.

wwb
Aug 17, 2004

TortiseHg feels vastly more polished/cleaner/better than the GitExtensions and msysgit. The whole SSH key requirement for github is also a bit weird coming from a windows background.

I'd put tortise svn as 2x ahead of tortiseHg these days.

Bigger issue I've got with DCVS is that it is very, very hard for the non-developers to grok -- SVN was tricky enough, but through enough cerimonial beatings I actually got it to take. Changing the rules will be difficult.

epswing
Nov 4, 2003

Soiled Meat

wwb posted:

Bigger issue I've got with DCVS is that it is very, very hard for the non-developers to grok

I begrudgingly opted for SVN instead of a DVCS because I didn't want to deal with teaching the designers how DVCS works. (They barely get SVN.)

I thought about maybe writing a couple shortcut scripts to "commit and push", and "pull and update", but that would almost certainly explode in my face.

Can't tell yet if it's going to be worse if (when) SVN explodes in my face. :v:

Dromio
Oct 16, 2002
Sleeper

epswing posted:

I begrudgingly opted for SVN instead of a DVCS because I didn't want to deal with teaching the designers how DVCS works. (They barely get SVN.)
This is why I use git-svn. The people who just aren't ready for git use svn. But me, I get all the power of local branches and rebases and squashing commits and blah blah blah. It's wonderful.

DreadCthulhu
Sep 17, 2008

What the fuck is up, Denny's?!
So, has anybody here tried both bzr and git and made up his mind about what's better? I'm a git user myself, and have heard good things about bcz. Given that I'm a total whore and have no allegiance to any specific tool, I'll gladly switch over to bzr if the feature set is obviously better.

I think the prob is that there's nothing equivalent to GitHub right now, so it's almost unavoidable to stick to git because of it. It's becoming a standard.

Plorkyeran
Mar 22, 2007

To Escape The Shackles Of The Old Forums, We Must Reject The Tribal Negativity He Endorsed
Does anyone other than Canonical actually use bzr? I don't think I've ever run into a project that uses it which wasn't on launchpad.

TOO SCSI FOR MY CAT
Oct 12, 2008

this is what happens when you take UI design away from engineers and give it to a bunch of hipster art student "designers"

DreadCthulhu posted:

So, has anybody here tried both bzr and git and made up his mind about what's better? I'm a git user myself, and have heard good things about bcz. Given that I'm a total whore and have no allegiance to any specific tool, I'll gladly switch over to bzr if the feature set is obviously better.

I think the prob is that there's nothing equivalent to GitHub right now, so it's almost unavoidable to stick to git because of it. It's becoming a standard.
I use Bazaar for pretty much everything; it's nice because it's in Python, so there's a real API instead of just bashing everything together with thousands of lines of shell scripts. This advantage also applies to Mercurial.

Oh, and the UI is designed rather than accreted.

It can push/pull to pretty much any other VCS (cvs/darcs/git/hg/svn), so you can use it even for people who use GitHub or Bitbucket or whatever.

Vanadium
Jan 8, 2005

Janin posted:

I use Bazaar for pretty much everything; it's nice because it's in Python, so there's a real API instead of just bashing everything together with thousands of lines of shell scripts. This advantage also applies to Mercurial.

There's Dulwich, a "a pure-Python implementation of the Git file formats and protocols", but I have no idea whether it is any good. :shobon:

Thermopyle
Jul 1, 2003

...the stupid are cocksure while the intelligent are full of doubt. —Bertrand Russell

Didn't I read about GitHub working on a Python implementation of git, or am I off my rocker? I can't seem to find where I read that now...

Lysidas
Jul 26, 2002

John Diefenbaker is a madman who thinks he's John Diefenbaker.
Pillbug
Dulwich works well enough to be fundamental to hg-git, which itself works reasonably well. hg-git is a GitHub project, and may well have been the driving force behind Dulwich.

Doc Hawkins
Jun 15, 2010

Dashing? But I'm not even moving!


Thermopyle posted:

Didn't I read about GitHub working on a Python implementation of git, or am I off my rocker? I can't seem to find where I read that now...

It sounds like you're thinking of libgit2, which is in C, and therefore better (for the purposes of speed and portability).

It has bindings for Python, of course.

pseudorandom name
May 6, 2007

ISTR something about github's implementation of git being a rewrite from scratch in Erlang or some other functional language.

the talent deficit
Dec 20, 2003

self-deprecation is a very british trait, and problems can arise when the british attempt to do so with a foreign culture





that was just the git server daemon, the thing that listens for remote git requests. github abandoned it, but andrew thompson wrote a blog series on optimizing it and got hired by basho as a result.

Rapportus
Oct 31, 2004
The 4th Blue Man

lol if you posted:

But aside from file syncs and submits what would be generating gigs of file transfers? Are you putting built assets into P4 and using that as a patch distribution system?

We put build assets into p4 as a distribution/deployment system, however we took a distributed approach so we're using separate/independent p4 servers in each location. Builds propagate between sites using rsync. With this model, syncs and submits are always done within the same site (fast) and the heavy lifting across WAN is done by rsync (which is more efficient since it often transfers far less than a p4 sync/p4 submit would have to). On an average day we push 150-200 GB of fresh data into each p4 server.

Now if only p4 sync could have a delta mechanism like rsync does...

Mithaldu
Sep 25, 2007

Let's cuddle. :3:

wwb posted:

Bigger issue I've got with DCVS is that it is very, very hard for the non-developers to grok

Tell them to watch this video by Perl guy Schwern: http://blip.tv/open-source-developers-conference/git-for-ages-4-and-up-4460524

He uses baby toys to explain git.

newreply.php
Dec 24, 2009

Pillbug
Hey thread, I have a request. Could some people who use CruiseControl post a few page sources for the web interface? I'm busy on something that needs to parse the HTML in CC's web interface, and I'd like to find out how much different CC versions are different from eachother. The basic landing page is okay, and the standard overview pages. No need for Dashboard stuff.

Oh and don't forget to censor some stuff in case you're embarassed about your horribly broken builds ;)

Tia!

uXs
May 3, 2005

Mark it zero!
Anyone have experience with the lock extension for Mercurial? Does it actually work? Can it be integrated into TortoiseHg?

Ziir
Nov 20, 2004

by Ozmaugh
I just started using Git and I'm really not sure what I'm doing. Say I edit a file and want to commit the changes, if I type "git commit -m 'comments'" then it tells me that there were no changes to commit and suggests that I do "git add file" first and then commit. This doesn't make sense to me because I already added that file before, and I don't feel like I should have to re-add the file again just because I edited it.

Am I missing something here?

Mithaldu
Sep 25, 2007

Let's cuddle. :3:

Ziir posted:

I just started using Git and I'm really not sure what I'm doing. Say I edit a file and want to commit the changes, if I type "git commit -m 'comments'" then it tells me that there were no changes to commit and suggests that I do "git add file" first and then commit. This doesn't make sense to me because I already added that file before, and I don't feel like I should have to re-add the file again just because I edited it.

Am I missing something here?

Watch this thing, it'll clear it up: Git for ages 4 and up

ColdPie
Jun 9, 2006

Ziir posted:

I just started using Git and I'm really not sure what I'm doing. Say I edit a file and want to commit the changes, if I type "git commit -m 'comments'" then it tells me that there were no changes to commit and suggests that I do "git add file" first and then commit. This doesn't make sense to me because I already added that file before, and I don't feel like I should have to re-add the file again just because I edited it.

Am I missing something here?

Better beginner resource is probably Pro Git. Chapters 4 and 8 probably aren't terribly interesting for you, but the rest should be very helpful. If you really want to understand git, be sure you don't skip over chapter 9.

Lysidas
Jul 26, 2002

John Diefenbaker is a madman who thinks he's John Diefenbaker.
Pillbug

Ziir posted:

I just started using Git and I'm really not sure what I'm doing. Say I edit a file and want to commit the changes, if I type "git commit -m 'comments'" then it tells me that there were no changes to commit and suggests that I do "git add file" first and then commit. This doesn't make sense to me because I already added that file before, and I don't feel like I should have to re-add the file again just because I edited it.

Am I missing something here?

The resources that Mithaldu and ColdPie posted are great; especially the Pro Git book. I recommend that book to everyone who's starting with Git.

A direct answer to your question can't hurt either: you do have to add the file again. You always have to add whatever you're going to commit. Every time*. git add adds the current contents of the file (whether or not it's already tracked) to what will be in the next commit. This way, you can build up your next commit file-by-file over multiple commands instead of a long sequence of arguments, e.g. svn commit file1 file2 file3 file4 file5. Note that you can use git add . to add everything under the current directory, both tracked and untracked.

*Let's not discuss git commit -a. Getting used to the index is well worth it and helps with the "oops, I committed too much" problem.

Mithaldu
Sep 25, 2007

Let's cuddle. :3:
Honestly, if we're gonna be giving usage advice:

Always use `git add -p`!

If you're using anything else you are either doing it wrong or an advanced git user.

epswing
Nov 4, 2003

Soiled Meat
Maybe you want to comment/elaborate on what this is and why everyone should be using it, rather than "betterusethiskbye"?

Mithaldu
Sep 25, 2007

Let's cuddle. :3:

epswing posted:

Maybe you want to
Honestly, no. No, i did not want to and i still do not want to. Would only dilute the message.

The only concession i'm willing to make for "What the peasant doesn't know, he doesn't eat."-type people is this:

`git add -p` will make you find bugs in your code before they even enter the repo.

If that isn't reason enough for anyone to go, look and evaluate on their own, then god help that poor person.

pseudorandom name
May 6, 2007

I like git gui more than git add -p.

Mithaldu
Sep 25, 2007

Let's cuddle. :3:

pseudorandom name posted:

I like git gui more than git add -p.

You make an excellent point there.

Adbot
ADBOT LOVES YOU

Plorkyeran
Mar 22, 2007

To Escape The Shackles Of The Old Forums, We Must Reject The Tribal Negativity He Endorsed
when actually writing code I almost exclusively use -am with a <5 word commit message then before pushing review each commit, squash and split like crazy, and add actual commit messages

I've strongly considered trying to figure out a way to just autocommit every time I save a file so that I can completely forget about dicking around with source control while coding

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply