LWN.net Logo

Support large repositories!

Support large repositories!

Posted Apr 8, 2010 23:13 UTC (Thu) by bronson (subscriber, #4806)
In reply to: Support large repositories! by cmccabe
Parent article: A proposed Subversion vision and roadmap

Mystery meat is mystery meat no matter where it's stored. When you give someone commit rights it becomes an honor system no matter what software you're using.

I notice you guys are ignoring my main points about audio and video files, and cross compilers that cost a lot of dough per seat. OK, fine, let's restrict this discussion to just native compiling. Even in this specialized case, anyone who's kept a distributed ccache up and running might be skeptical of Avi's advice.

Executables are WAY more backward compatible than object files. If you can ensure that everyone is running the exact same minor version of gcc and libraries, ccache would probably work. In most dev shops, where there's a crazy mix of personal favorite Linux distros is plus a bunch of custom-compiled shared libs, I'm pretty sure trying to keep everyone on ccache will cost you a lot more time than it saves. (spoken from my bitter experience of trying to do this in 2006).

Different strokes, right? You will to use whichever technique is best for your shop. That might be ccache, custom scripts pulling binaries off fileservers, or just checking them right into source control. Each one has its place.


(Log in to post comments)

Support large repositories!

Posted Apr 30, 2010 18:44 UTC (Fri) by cmccabe (guest, #60281) [Link]

> Mystery meat is mystery meat no matter where it's stored. When you give
> someone commit rights it becomes an honor system no matter what software
> you're using.

When you check _code_, a skilled coder can look at your change and figure out what it is doing. When you check in a _binary_, there is no obvious way to figure out how it differs from the binary that was previously there. Sure you could disassemble it and run a detailed anaylsis, but realistically, that's not going to happen. Hence, it's "mystery meat."

> I notice you guys are ignoring my main points about audio and
> video files

No, I totally agree with your points regarding audio and video. I hope that git will be extended to support working with these large files more effectively.

> Executables are WAY more backward compatible than object files. If
> you can ensure that everyone is running the exact same minor version
> of gcc and libraries, ccache would probably work. In most dev shops,
> where there's a crazy mix of personal favorite Linux distros is plus
> a bunch of custom-compiled shared libs, I'm pretty sure trying to
> keep everyone on ccache will cost you a lot more time than it saves.
> (spoken from my bitter experience of trying to do this in 2006).

You are doing it wrong. Set up a chroot environment with the proper libraries and compiler. Look up "cross compiling with gcc."

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds