Help ESR Stamp Out CVS and SVN In Our Lifetime
mtaht writes ESR is collecting specifications and donations towards getting a new high end machine to be used for massive CVS and SVN repository conversions, after encountering problems with converting the whole of netbsd over to git. What he's doing now sort of reminds me of holding a bake sale to build a bomber, but he's well on his way towards Xeon class or higher for the work. What else can be done to speed up adoption of git and preserve all the computer history kept in source code repositories? ESR says he'll match funds toward the purchase of the needed hardware, so if you want to help drive him into bankruptcy, now's your chance.
Equivalent Series Resistance?
I don't want to do a sig now
You had my curiosity, then I read this:
ESR says he'll match funds toward the purchase of the needed hardware, so if you want to help drive him into bankruptcy, now's your chance.
Now you have my attention.
(Not enough to RTFS however. This is Slashdot...)
Jesus was all right but his disciples were thick and ordinary. -John Lennon
Save-On -> Longs Drugs -> CVS -> ESR
Git set and aid esr for cvs and svn fix. HTH.
For all intensive purposes, "whom" is no longer a word. That begs the question, "who cares"?
Nice trolling, dice.
I might do it for some things, but right now the ability to only checkout a subdirectory[source] is paramount in the way we use svn around here. Nestled with the fact that there are so many git solutions that are third-party hosted only, and so many hostable open source subversion options available, I'll stick with svn.
Moving everything to the cloud, which is marketing speak for someone else's servers, for increased functionality is not an acceptable solution. Sure, you can host your own git repository, but the functionality in the available F/OSS solutions blows.
Sig: I stole this sig.
I just want CVS to stop giving me so much shit when I try to buy up all their Sudafed.
I'VE GOT A *BAD COLD*, ALRIGHT?!! THAT'S WHY!!!!!
SJW's don't eliminate discrimination. They just expropriate it for themselves.
Oh come on, TFS isn't bad enough to be flamebait!
Now, VSS, on the other hand...
"[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz
Shouldn't that last line be 1st hater? And who else saw CVS and wondered why Eric would want to stamp out comma delimited files (CSV...I know dyslexia)?
"A person is smart. People are dumb, panicky dangerous animals and you know it." - K
And whatever shall we do with the bathwater now that the baby is gone?
TFA is about killing CVS for Git. It says NOTHING of SVN. This is probably because SVN is still a decent system and Git is no replacement (and the reverse is also true).
CVS should die though, yes. Move to SVN or Git depending on your particular needs.
I love git as much as the next nerd However, many centrally-managed hierarchical orgs do just fine with an SVN workflow. Something distributed like git or hg feels very alien to them. Forcing them to accept a workflow that grates against how their organization works is just inneficient. Just because a lot more people work on distributed teams in very different environments than the predominant environment 10 years ago doesn't mean that this group's toolchain is best for everyone
And then he turned into a neoconservative/fringe libertarian nutbar after that business with the skyscrapers in '01.
Hail Eris, full of mischief...
E pluribus sanguinem
I'm more concerned about CVS. Where am I going to get my prescriptions filled?!?
Yo dawg, I heard you like CVS so I put your pharmacy's dyslexic tabular data in version control.
...or something like that.
"[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz
Git is the best repository because it's the easiest to insult when something goes wrong. "Stupid git!" is a lot better than "Stupid CVS!"
Not a sentence!
He isn't raising new money, he's opening up a discussion on what to do with the remaining money in some fund he started, and he said he'll match what's currently in the fund.
Wish we could talk the editors into doing basic fact checking on the article submissions they allow through.
Not sure why he needs to buy a new machine (CapEx) when this task seems a good match for OpEx solutions.
You can get a lot of CPU hours for $700....
Not sure why he would be asking for donation anyway - contracting and writing not paying much ?
The allergies are so bad this year that the drug dealers are turning meth back into Sudafed.
"A person is smart. People are dumb, panicky dangerous animals and you know it." - K
Git's subtree / subproject management is extremely painful. The information manager from hell, indeed. I dislike SVN/CVS extremely, but they make much easier to do sub-repositories. For example, Arch's ABS is entirely under SVN, which works well enough for them, but using git the same way sounds like torture.
Those who advocate genocide deserve every protection afforded by law, and none afforded by common human decency.
Do you expect anything else from timothy?
VSS (Visual SourceSafe) was okay - as long as you locked it up behind a SourceOffSite (3rd party) server. The SOS service as the primary interface between the VSS repository and the clients prevented about 99% of corruption issues.
This was back when your options amounted to VSS, Perforce, and a few other high priced version control systems. About the only free solution back around 2000 was CVS, and that was just bad for other reasons.
(Some teams benefit from distributed version control systems like Mercurial/Git. Others benefit more from centralized VCS like SVN / TFS / Perforce. We prefer SVN because it is far easier for non-technical members, i.e. mere mortals, to understand and much harder for them to do the wrong thing.)
Wolde you bothe eate your cake, and have your cake?
He was a nutbar way before that, I assure you. I had my first runs into him in the first half of the 90's. The Cathedral and the Bazaar remains his single shining moment.
Also, easier to buy Sudafed (or Meth) from drug dealers than to get Sudafed from a pharmacy.
Clearly then, the next generation version control system should be named "Sexy Flanders".
General Relativity: Space-time tells matter where to go; Matter tells space-time what shape to be.
This does sound like the perfect use-case for the cloud (of the 'rent a VM' type of cloud, such as AWS or Azure) - both for short term access to vastly more CPU, RAM or storage than you would reasonably want to be sharing a room with and also for the huge network bandwidth to the rest of the internet typically available from a cloud datacentre (AWS as an example capping out at 224GB RAM or 42TB or local storage).
However this is E.S.R. we are talking about so, aside from the possible issues with whether any of the cloud providers are compatible with his larger philsophical aims, who knows what other interesting ideas he might come up with given access to much more powerful personal computer hardware rather than having his creativity shackled by the limitations of his current systems.
CVS should die though, yes.
Yes CVS should die. this is why I stuck with RCS.
Like the so called "death of the mainframe", the death of CVS is still a long way off. From a business POV moving a large well managed CVS repository to something else is simply not worth the effort in most cases. I look after CVS repository for ~25 devs, some of the (active) code has been there for well over a decade. We looked long and hard at git, the benefits are not enough to justify turning the whole shop upside down for a few months. Physically converting the repository is just part of problem, there's also the automated build and tracking scripts that depend on CVS. You can also add to that the down time for at least half the devs to learn the new system - it's quite disturbing how many experienced devs only have a marginal understanding of source control in the first place.
Of course if you're starting a new repository then use the shinny new hammer with the rubber grip.
And did you exchange a walk on part in the war for a lead role in a cage? - Pink Floyd.
If Git did all that SVN does, I'd be glad to switch.
But there are capabilities in SVN that Git not only doesn't have, it has decided it will never have. And that's a problem.
Biggest issue for me? In SVN, I can create an extern to a subdirectory of a project. Git's subprojects always point to the root of a project. And for us, that's a big deal.
When cryptography is outlawed, bayl bhgynjf jvyy unir cevinpl.
> NC Biotech Center in 1998.
That was actually in April 1997. I was there when ESR got thrown out of the bar because the bar tender though he was retarded. He wouldn't sell alcohol to him. I think the fact that ESR was ranting about guns was more the reason he was thrown out. If his position on Subversion is as irrational as it is on guns, then I would expect him to hate it because Subversion makes sense and simply just works for people.
Hosting Git is dirt cheap. Converting from ${old_terrible_system} to Git is the painful one-time expense. Here's how you do it:
1. Fire up a suitably bit AWS cloud server.
2. Copy your repo to it.
3. Run the command to convert your old repo to Git.
4. Download the new Git repo.
5. Shut down the instance.
You don't buy expensive, power-hungry software that's going to cost an arm and a leg to store, power, and cool for the next year when you only need its brute force for a few hours. The Cloud isn't a magical cure-all, but it's a perfect fit for things like this.
Dewey, what part of this looks like authorities should be involved?
ESR has already helped several free software projects convert from CVS to Git using his existing computer. The bigger the project, the longer it takes. (Each attempt to convert the Emacs repos takes 8 hours with his current computer.) He has studied the C code for doing the conversion, and determined that the best sort of computer for doing these conversions would be as fast as possible (doesn't matter how many cores; this is a single-thread process) and would have as much RAM as possible. Graphics card? Whatever, who cares. Keyboard, mouse? Not going to buy those, he already has those. Oh, and he would prefer it not sound like a leaf blower so he is looking for quiet power supply and a case with large quiet fans.
He says that several people spontaneously donated money to help him buy a better computer. So he opened up a discussion for how to best spend the money.
Several people urged him to only use ECC RAM, which means either an AMD chip or a Xeon. Someone just donated $1000 (!!!) so he has pretty much settled on the Xeon.
Once he has this, he will go around to free software projects and offer to do the conversion for them. His plan is to grab a copy of the CVS repo, run the conversion to make sure there are no surprises, then ask the project maintainers to stop modifying the CVS repo while he runs the final conversion.
This seems like a reasonable service for him to be offering. Instead of each project figuring out the conversion process, he will become an expert on CVS to Git conversions (with more experience than anyone else) and he will have the purpose-built computer to do the conversions as quickly as possible. So he really will be saving time and hassle for the various projects.
P.S. He converted the NetHack repos, and stirred up a hornets' nest. Read about it here: http://esr.ibiblio.org/?p=6389&cpage=1#comment-1207141
lf(1): it's like ls(1) but sorts filenames by extension, tersely
There are many usecases where people will need a centralized version control system (VCS). SVN was written ground up to be best in class centralized VCS and they accomplished this goal while building a very elegant and efficient client server framework to boot.
However IMO, SVN is still missing one very important feature: obliterate. This is a huge weakness with large repositories.
I also missed branch aware meta data in the early versions (I've been using since 0.8x) and not sure if this has changed. Git has done a very good job there.
After going through the process of moving from VSS to Subversion here some 10 years ago, I am in no hurry to change source control again.
We had to educate a whole bunch of people, many of whom had never used anything more sophisticated than a tarball for version control, on how to use subversion.
Much as I like DVCS, and in hindsight it would be useful to have some form of it here, it would have to:
1) Be able to import our large and complex codebase,
2) Cope with the fact that we have one repos with multiple projects, each with multiple code modules, each using (for some reason) non standard path names, not trunk/branches/tags, but Trunk/Branches/Releases.
3) Be easy to learn and tolerant of mistakes, so probably Mercurial rather than git
4) Integrate with our home grown automated build system that resolves dependencies, records svn version info in headers, and ties in with at least 3 different build environments.
The barrier to entry is now too high - we have tried twice now to jump it, even tried to rework the svn2hg scripts, but have not found a solution that wouldn't stope us working for over a month.
Sigh!
.
Am I the only one concerned about the resulting monoculture if the GIT proponents have their way?
> What he's doing now sort of reminds me of holding a bake sale to build a bomber
OP speaks as if he witnessed this before
Shouldn't that last line be 1st hater? And who else saw CVS and wondered why Eric would want to stamp out comma delimited files
Fuck, who wouldn't want to stamp out comma delimited files.
The fuckers usualy aren't even delimited with a comma!
Watch this Heartland Institute video
So is ESR trying to convert the NetBSD CVS repo in some weird and special way or something, and that's why it failed? Because it has already been converted and is on Github; if he needs info on how it was done, there's probably someone on the tech-repository mailing list that can help. It's been converted to Fossil too.
He was a nutbar way before that, I assure you. I had my first runs into him in the first half of the 90's. The Cathedral and the Bazaar remains his single shining moment.
Except that even that is questionable. Linux has never split into multiple projects which displayed fruitful inter-breeding and competition in the "marketplace of ideas", so the concept of the Bazaar does not seem a great analogy to the way the development process actually works. There has always been basically one mainline thrust of development steered ultimately by Linus T. Any side projects (more significant than drivers for a particular piece of hardware) either get incorporated into the main line within about 9 months, maybe 18 months maximum, or they die out. The only significant long-term fork of Linux I can think of is Android. There is also some interaction with the BSD family, but not that much. Overall, the development process looks more like the Cathedral to me when you look at timescales greater than a few months.
I resemble that remark.
(It's a lot harder to change a SCCS based workflow into git than you would think).
Watch this Heartland Institute video
> git done right.
I agree 100%
www.fossil-scm.org
Aphorisms don't fix code. (Bart Smaalders)
However this is E.S.R. we are talking about so, aside from the possible issues with whether any of the cloud providers are compatible with his larger philsophical aims
ESR (Looks like Fortran to him) has "larger philosophical aims"?
who knows what other interesting ideas he might come up with given access to much more powerful personal computer hardware rather than having his creativity shackled by the limitations of his current systems.
Oh, I've been trolled, how silly of me.
Watch this Heartland Institute video
SVN works just fine. I see no need to move our corporate version control to git. GIt is fine of your doing a world wide project like the Linux kernel - but there is absolutely no to use a distributed version control in an enterprise.
Then you don't understand distributed version control. If you have more than 1 programmer you have a need for distributed version control.
CVS should die though, yes. Move to SVN or Git depending on your particular needs.
My particular needs are to (1) check out only a subset of files, because those files are binary and very large, and (2) permanently delete those files that I know I will no longer need. Unfortunately, neither SVN nor Git meets those needs, but CVS does. (And as much as I like SVN, rebuilding the entire repository doesn't count for (2)).
I switched to Afrin (oxymetazoline spray) over all this sudameth hysteria. It's notorious in some circles for being "addictive", meaning withdrawal after prolonged use produces rebound congestion, but use in one nostril at a time minimizes that.
What kind of butt drugs are you on?
Visual SourceSafe would start corrupting repositories once they got above the 2 GB barrier. My last job had a 17 GB repository, and spent months trying to convert it to a different source control because of all the corruption issues.
I eventually got submodules to work properly for me, and have been using them effectively (I think) for a few years now. But it's not easy teaching other devs. Which is why I need to spend some time investigating hg properly. Although you can do sparse checkouts with git, apparently hg has some plugins which allow you to partially clone a repo without necessarily cloning all of the objects in its history (supposedly plugins can fetch that on demand, rather than in the initial clone). It seems this is possible because git is designed around a data format, whereas hg is designed around an API. It all seems great but I just can't find the time to invest in hg
There's the kernel.org "master" linux, then the various side-branches for various developers, subsystems, and the like that does find its way back into the "linus tree" in part or whole. Then there's the significant stack of modifications found in almost all major distributions. And then there are a number of very specialized "forks" that most have never heard of, or care about. (Android is the only one most have heard of, but many don't know it's Linux.)
And then he turned into a neoconservative/fringe libertarian nutbar after that business with the skyscrapers in '01.
Do you have any proof of that? In this Slashdot interview from 1999, which you will astutely note is before 9/11, people were complaining about him in similar terms to today. What is this big change that you claim happened? Is there something in his writings or blog?
After 9/11 some people went cold turkey on the bat shit insanity that they had been involved in, others found a moment or two of sanity and then relapsed. And some others couldn't even manage that.
You seem to have made clear how you view ESR, but I guess we know where you stand too, eh?
much of left-wing thought is a kind of playing with fire by people who don't even know that fire is hot - George Orwell
Who is ESR? Why is he/she/it supposed to be a household name around here?
Sigh, noobies.
"First they came for the slanderers and i said nothing."
Oh I dunno about that... we (thankfully) haven't heard much from/about him here in many years, and when he does actually turn up again it's for writing some bit of software.
Actually I'm not a Libertarian (big or small "L"), but they often have ideas worth some consideration. You're 0 for 2.
I am curious now though. You're an "apostate" libertarian? That would make you formerly a libertarian. Where did you go wrong?
much of left-wing thought is a kind of playing with fire by people who don't even know that fire is hot - George Orwell
You're 0 for 2.
That's adorable that you're keeping score.
Hail Eris, full of mischief...
E pluribus sanguinem
17GB? Maybe you should not put binaries in your source code repository.
lucm, indeed.
I stay away from those dangerous drugs. There's nothing that a bottle of vodka and a Steven Seagal movie marathon can't cure.
lucm, indeed.
(1) check out only a subset of files, because those files are binary and very large, and
Git can do this with sparse checkouts, but as you probably know, neither git nor svn are really meant to manage large binary files. You'd do best to use a repository that was designed to fit your needs so you're not constantly butting heads with your version control system.
(2) permanently delete those files that I know I will no longer need.
Most source code version control systems are specifically designed to avoid permanent data loss, so again, you're going to fighting your VCS if you use one that was meant to handle source code. That being said, BFG will permanently delete data from a git repository if that is necessary for whatever reason.
They don't grade fathers, but if your daughter's a stripper, you fucked up. --Chris Rock
I wish people would stop pretending that the DSCM model is the "only way of the future". There are plenty of completely valid use-cases for monolithic source control models. For instance, I am a firm believer that configuration management repos belong in a strictly monolithic architecture, with a single source of truth, deterministic version numbering, etc., etc....
Certainly I could see a case for moving people from CVS to something more modern (but in the same basic vein) like SVN, but here's the thing:
If their existing SCM application is working for them, and they're happy with it, then it's perfectly fine.
Bull. Shit.
Programming teams -- LARGE programming teams -- got along just fine without distributed version control for LITERALLY decades. I am on the fence about its usefulness in pure programming applications (like, as someone else mentioned, the kernel), but am absolutely opposed to its use for things like your configuration-management repository, the repo you store your DNS zonefiles in, etc., etc.
I would suggest to you that if you think the only thing people are using version control for is "source code", then you don't understand the enterprise.
Don't be jealous, there's plenty of me to go around.
Hail Eris, full of mischief...
E pluribus sanguinem
You don't need DVCS for more than one developer, but certainly for some teams, organizations, and situations it offers a lot of benefits.
Fir a lot of projects the DVCS advantages are tenuous. A lot of regulated industries mandate by law fairly strict top-down control that erodes a lot of the DVCS benefits. A lot of projects are not pure software projects that have lots of required binaries files that git and mercurial are powerless to merge sensibly. A lot of organizations have a variety of projects all stored in a single repository for whatever reason, and having to clone the entire thing for a single project is a nuisance.
For situations like those, which are commonplace in the commercial world, SVN and the centralized model is a fine way of doing things.
In my experience, DVCS is excellent for pure software projects, and sucks for anything else. SVN on the other hand is a great tool that is useful for a great number of projects beyond software.
In otherwords, use the tool with the right capabilities for the task at hand, not because of what's trendy.
It's just that ESR has an old decrepit machine to do it on. A low-end Xeon w/16-32G of ECC ram and, most importantly, a nice SSD for the input data set, and a large HDD for the output (so as not to wear out the SSD), would do the job easily on repos far larger than 16GB. The IPS of those cpus is insane. Just one of our E3-1240v3 (haswell) blades can compile the entire FreeBSD ports repo from scratch in less than 24 hours.
For quiet, nothing fancy is really needed. These cpus run very cool, so you just get a big copper cooler (with a big variable but slow fan) and a case with a large (fixed, slow) 80mm input fan and a large (fixed slow) 80mm output fan and you won't hear a thing from the case.
-Matt
> Why would one in his sane mind convert from CVS to SVN?
Because Subversion really is "CVS done right". It scales much, much better, it's much easier to administer and manage, and it has much better support for large centralized repositories with limited access to specific parts of it for specific developers. My transformations from CVS to Subversion have been quite straightforward, except where developers manually edited old CVS files in the repository itself and broke things years previously.
If you need the local flexibility and to have source control access when disconnected from your central repository, the 'git2svn' interface has also been invaluable.
This isn't quite true. Git has no problem with large repos as long as the system ram and kernel caches can scale to the data footprint the basic git commands need to access them. However, git *DOES* have an issue with scaling to huge repos in general... it requires more I/O, certainly, and you can't easily operate on just a portion of a repo (a feature which I think Linus knows is needed). So repos which are well in excess of the RAM and OS resources required to do basic commands can present a problem. Google has precisely this problem and it is why they are unable to use git despite the number of employees who would like to.
Any system built for home or server use by a programmer/developer in the last 1-2 years is going to have at least 16G of ram. That can handle pretty big repos without missing a beat. I don't think there's much use complaining if you have a very old system with a tiny amount of ram, but you can ease your problems by using a SSD as a cache. And if you are talking about a large company... having the repo servers deal with very large git repos generally just requires ram (but client-side is still a problem).
And, certainly, I do not know a single open source project that has this problem that couldn't be solved with a measily 16G of ram.
-Matt
I read through half the comments here before twigging to what's really going on. He's got all of $700 for this project. And we're paying attention to this because???
(2) permanently delete those files that I know I will no longer need.
I'm confused. The entire purpose of an archive database is to KEEP things, forever, so you can go back to them when you need to. If you have files that you expect to delete, maybe they shouldn't be going into the database.
If by large you mean tens of megabytes. Downhill, with a stiff breeze at its back.
And comparing their work versus ESR on fetchmail is a classic case of glass house and thrown stones - but someone has to be a critic. Airing his political dirty linen and annoyance with investigative journalists in the "jargon file" was probably the point where he spent the capital of goodwill he had built up and was taken less seriously
Compared to the code you'll find in a CVS or SVN these days, the VCS itself is the leadt of your problems.
... sounds like some rogue guy who wants to fork every project using CVS or SVN and stick them on Github or something.
Problem? Did you even bother to read the summary?
I'm just kidding, tee hee! :-) This's the sorta !@#$ we opensauce [sic] free software people do. Enjoy the ride. It's good for the soul.
Aaron, sleep in peace.
"Tongue tied and twisted, just an Earth bound misfit
Every time I'm forced to use SVN or TFS, I'm annoyed by how difficult it is to work on multiple patches for multiple features at the same time. With git I can create my own local feature branches, and create as many versions of each patch series as I want, until I'm happy to push them for review. And I never feel like I'm at risk of losing any half finished work I've already completed.
09F91102 no, 455FE104 nope, F190A1E8 uh-uh, 7A5F8A09 that's not it, C87294CE no. Ah! 452F6E403CDF10714E41DFAA257D313F.
I swear, none of you people understand the meaning of the words "neoconservative/fringe libertarian nutbar after that business with the skyscrapers in '01."
It's just mind fwap & etc. Tea Partier == libertarian == GOP == conservative == WHAT?!?!?!?!?!?!
You're shallow as panes of glass! Think. Think harder! Concepts mean something. Don't listen to what MSM wants you to think of. THINK for yourselves!!!
I'm a libertarian, and your definition of what that word means is woefufully INADEQUATE, to say the least.
Do some fscking basic research, then speak.
I'm not a Tea Partier, and you can't imagine how insulting that is to me!
"Tongue tied and twisted, just an Earth bound misfit
He already was a neo-conservative fringe Libertarian. It just became more apparent after he ran out of geek things to talk about.
It is high time eric goes back to the 90s and leaves real programmers alone. Doesn't anyone else feel at least a little ashamed of how this guy who gave us the fetchmail plague always grabs the limelight ? The same guy who is notorious for harassing women at conferences and for generally being a nutbag.
I for one am going to create a whole bunch of SVN repositories now, just because.
"Only one thing is impossible for God: To find any sense in any copyright law on the planet." - Mark Twain
Fire up an amazon cloud instance configured for number crunching, do conversion, shut it down again. This shouldn't cost more than 50 bucks...
"Only one thing is impossible for God: To find any sense in any copyright law on the planet." - Mark Twain
If you like the paradigm of the centralized repository which sure has it's uses then consider moving to SVN instead. It will make things easier and nicer, it is CVS done right.
The git/mercurial crowd just cannot stand the CVS/SVN workflow and wants a lot more flexibility which makes perfect sense for a global open source project. If you don't need all that, move to SVN and be happy.
"Only one thing is impossible for God: To find any sense in any copyright law on the planet." - Mark Twain
Typical tea-partier, to get all riled up like that...
(2) permanently delete those files that I know I will no longer need.
I'm confused. The entire purpose of an archive database is to KEEP things, forever, so you can go back to them when you need to. If you have files that you expect to delete, maybe they shouldn't be going into the database.
No you're not; you're being patronizing. I am a photographer. I take lots of photos. The negatives are over 30 MB each. A single day's shooting can be dozens of GB. And while I expect to delete many of them, I don't know which of those will be deleted until I've gone through and worked with them. But I want them in an archive immediately, so I can have them tracked, versioned (the XMP sidecars/DNG headers are plaintext), backed-up, remotely accessible, etc.
The funny thing is, despite pretentious boosters of one modern VCS after another arguing that their lack of a feature is a feature in and of itself, and that I'm stupid for having different needs than them, ancient CVS does *exactly* what I need it to do. (Proprietary Perforce is even better, though I'd prefer something open source). So until its competitors catch up with its state-of-the-art 1990's technology, I'm going to keep using CVS.
You'd do best to use a repository that was designed to fit your needs so you're not constantly butting heads with your version control system.
I'd love to know if such thing exists (in an open source form, ideally). As far as I'm aware, no such thing exists. (Boar is getting close, however, so I'm hopeful).
No VCS is meant to do this, neither Git, SVN and certainly not CVS. Those files don't belong in a VCS because you cannot make a diff between them. Small binary files (e.g. icons in a website) are a small nuisance, but there is no point in storing large binary blobs in a VCS regularly. What you need is a backup system, not a version-control system.
SVN allows to do this with svndumpfilter (and I was unaware CVS had any way to do this). And no it should not be made any easier, no one should be allowed to monkey around with the repository history with any less than admin rights. If you find yourself regularly removing files from a VCS, it means you have been adding too many useless files. Again, you want backup for this, not VCS.
Victims of 9/11: <3000. Traffic in the US: >30,000/y
If you're a photographer dealing with 30MB images, then you're almost certainly using non-destructive editing on them. It sounds like the tool that you want is not a version control system at all, it's a filesystem.
I am TheRaven on Soylent News
That's true. You're not a libertarian. They don't get as turned on by men-in-jack-boots as you do.
Heh. It IS a feature in the use case for which it was designed. Making it work the way you'd want it to would break the original use case.
If a train station is a place where a train stops, what's a workstation?
He is actually quite a dick to people ...
Gee, where've I heard that before? Perhaps every time I've heard of geeks being talked about?
"Tongue tied and twisted, just an Earth bound misfit
I use mercurial, you insensitive clod!
I use SCCS and I LIKE it you insensitive clod!
My source code control system is my text editor! Make is all anyone should need!
"Tongue tied and twisted, just an Earth bound misfit
You do realize that libertarians aren't the people that run libraries, right?
much of left-wing thought is a kind of playing with fire by people who don't even know that fire is hot - George Orwell
You say that as though it's impossible to hold ideas from different groups simultaneously. How charmingly naive.
Hail Eris, full of mischief...
E pluribus sanguinem
The best solution is Alienbrain, but if you were looking for open source, then you probably don't have budget for Alienbrain.
There are other solutions that can probably work for you, but I'm not sure which ones support easy permanent deletion of assets, as that is not a use case that I've ever encountered, personally. But at the end of the day, if CVS fits well with your workflow, there is no point in you changing to some other solution just because CVS is fundamentally defective as a source code version control system.
You're not using it for source code, so CVS's basic architectural flaws don't necessarily apply to you. If it's the best tool for your job, then use it in good health!
They don't grade fathers, but if your daughter's a stripper, you fucked up. --Chris Rock
Single threaded processes don't necessarily need the latest generation processors because they just keep adding cores. Instead of trying to buy a new server, why not just accept a donation of a 3ish year old dell/hp/supermicro server. Lots of businesses & universities have a hardware rotation cycle for really good hardware. I've bought perfectly good poweredge servers that were a few years old for under $50 before at a university computer auction.
Well, ...
we both did not get it.
ERS wants to transform SVN to Git and CVS to Git
Regarding your experience ... welll, In my experience SVN is a pain in the ass in large organizations ... especially it is slow like hell.
30 minutes synchronization and commit times are common.
Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
I disagree about the 'single shining moment'. For myself, I'm a fan of 'The Art of UNIX Programming'.
friends don't let friends teleport drunk
The part about ESR wanting to transform large public repositories to git, I understand. I only meant to explain why someone would want to take the original step of transforming a CVS repo to Subversion.
That's not what I'm talking about, and I can and have done that with git using only a single copy of the history of the repository.
I mean that I can make a whole bunch of changes to one file, then tease those changes apart into multiple patches and commit them in the order I want. And if I'm not happy with how things ended up, I can re-order or re-write those patches before I push them upstream. To do the same in a single branch with SVN, I'd have to copy the file, revert it, then manually apply each change one at a time. Hoping that I get everything right the first time.
If I want to run a suite of tests against every patch one at a time, I can script that in a couple of minutes. Or if I notice that something is broken, I can do a binary(-ish) search of everything I've done to find it.
Mastery of git makes almost any workflow possible.
09F91102 no, 455FE104 nope, F190A1E8 uh-uh, 7A5F8A09 that's not it, C87294CE no. Ah! 452F6E403CDF10714E41DFAA257D313F.
You don't need to go to a drug dealer for that, you can do it right from the comfort of your home!
"A novel and straightforward synthesis of pseudoephedrine from readily available N-methylamphetamine is presented. This practical synthesis is expected to be a disruptive technology replacing the need to find an open pharmacy. "
Much Madness is divinest Sense --
To a discerning Eye --
Much Sense -- the starkest Madness
I was unaware CVS had any way to do this
CVS is just a layer on top of RCS. RCS stores all history for a given file, in a file in the RCS store named for that file.
Therefore to purge all history for that file, you delete it's repository file. Tada! Gone.
CVS is just a layer on top of something designed for single file programs, and it shows. It doesn't handle renames well. It doesn't handle getting arbitrary revisions of entire projects well. The more files you have in your project, the more overhead you'll consume attempting to track global project revisions.
SVN does at least fix some of that.
Sorry, I realize that could have sounded patronizing, but I didn't mean it that way. I really think that it's a question of the tool fitting the purpose. *All* of the archive systems I've ever worked with have been designed to *prevent* deletion, accidental or intentional, because they were designed to work with text and documents. (And since you brought up the word, I feel compelled to point out that I did not suggest that you're "stupid" for having different needs, just that maybe it's the wrong tool for your purpose.) Heck, if CVS is doing the job you need done, and you are careful not to destroy the wrong things, then by all means keep using it.
How easy would it be to create different repositories? Then you could save a day's shooting in a short-term repository until you had at least reviewed them, at some point copy over the ones you want to keep to a more permanent repository, and delete the whole short-term repository - admittedly crude, but much less work than rebuilding.
My apologies for my overly combative response. Thank you for your kind clarification.