5 ms·
Misses also GOOG's dearly Perforce.
by Create 15y ago
Misses also GOOG's dearly Perforce.
- tedunangst 15y agoThere is nothing particularly astonishing about perforce. What makes you think it should have been included?
- to3m 15y agoIf you ignore all the distributed "stuff", and the workflow enhancements it permits, and assume everybody is always connected to the server and attached via a LAN, you can just concentrate on doing a reasonably good job of handling very large quantities of data, including very large binary files. (Apologies for not trying to reproduce the breathless style of headline.) As is common, the article presupposes that decentralization is unambiguously progress, but that isn't true in all respects. People often complain about the idea of using version control for large binary files, as if it is unreasonable to want such a thing, and that as a point of principle version control systems should contain only text files, and the fact that many version control systems support this poorly is proof that you don't want it anyway. But there are actually people who create, with their own hands, large binary files, often of the completely-unmergeable variety, and they deserve version control just as much as the programmers do. (And then once you have a system that works well for them, you can then use it to solve all manner of problems that might previously have involved storing files in public folders, mailing them round, or maybe just waiting for them to compile again. No need for any of that crap any more - just check the files in, they're there forever, and you can get them back quickly.)
- tedunangst 15y agoI never had a problem using cvs for what I considered large binaries. Certainly we kept using cvs long after mostly switching to bk because cvs worked better for binaries. Perforce never seemed like a big deal, just cvs with a little more.
- nitrogen 15y agoDue to CVS's (or RCS's?) text-based file format and conversion of line endings when checking out a repository, migrating binary files across operating systems can cause mangling of bytes whose value equals that of CR and LF.
- rue 15y ago> As is common, the article presupposes that decentralization is unambiguously progress, but that isn't true in all respects. It is, in the sense that a decentralized VCS is, essentially, a superset of a centralized one. … Blobs are certainly still an issue, though orthogonal to distribution (I don't think you intended to imply it was related, but it could be read as if you did).
- to3m 15y agoWell, I don't mean to imply that binary files are inherently impossible to handle using a decentralized system. In fact, I have some PDFs and PNGs in my git repository, and git has managed not to make a mess of them. But I still think binary files are difficult for distributed systems to support well. Distributed systems rely on allowing people to (in effect) create multiple versions of the same file, and then merge them all together later. But it's very rare that binary files are mergeable! And if the file can't be merged, the distributed approach won't work. People will step on one another's changes by accident, and people will have to redo work. The usual solution is simply not to allow multiple versions to exist: enforce some kind of locking system, so that each editor has to commit their changes before the next one can have a go. But now you need some centralized place to store the locking information...
- paulhauggis 15y agoI believe perforce handles large binaries as well.
- cpeterso 15y agoGoogle's Perforce?
- deleted 15y ago[deleted]
- TomasSedovic 15y agoI read the "GOOG's dearly" part as "dear to Google" not "developed by Google". Google did use Perforce in the past and they still do, probably. I think that the GP used the phrase correctly, but not being a native English speaker myself, I'm not entirely sure.
- InclinedPlane 15y agoThis article isn't meant to be a comprehensive list of all SCM systems or even all of the important ones. It's just a list of all of the big technological advancements. Perforce is a good system but it was never revolutionary.