The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.
Some things that just bug me about the tools I'm using...
GIT - After all these years, I can't be the first person who wants to manage multiple separate but tightly related code bases as one repository and avoid the overhead of constantly having to keep them in sync, configure them the same, etc... Or where one part of it is to be public and the other part not. It seems crazy to me that the leading SC solution is so lacking in this key aspect. If you are on a team and all pushing to (now multiple) common repositories, it seems like it would be even more psycho.
Visual Studio Code - Related to GIT above, cannot deal with multiple repositories so you lose GIT integration if need to have separate repositories, which the above will often force you to do. I just started using VSC on my own C++ stuff and was really appreciating seeing what had changed, which lasted a few days until the above forced me to lose that ability.
And, though having the intellisense stuff is very helpful, it can be incredibly intrusive and annoying sometimes.
And, it seems to want to force you to have all customizations be per-user. Clearly in many cases you would want global configuration that is enforced/available for a project and shared by all users of it.
C++ - Why has the committee spent all this time creating a cathedral to container abstraction, while seemingly ignoring the fact that you can't write even a modest C++ program and remain within the standard? I.e. you have to throw in a bunch of third party bits and bobs, because there's been not much progress towards a reasonably full featured cross platform (even if some of it is only applicable on the mainstream) system. I think that the latter would do far more to allow C++ to compete against things like C# than the ability to remove every third odd numbered duplicate vector element.
Similar to above, while ignoring fundamental things like enumerations, which suck in C++. I've done a lot of work on my own to make them very strong (if you are interested : [^]) but it just seems like stuff like that are core language issues.
At some point C++, if it's going to survive, is going to have to just cut off some of the past and move forward, IMO.
I'm sure there are others but my coffee cup runneth dry.
As I said, I am a single programmer (1 man shop). I do not work in a corporate or team environment. . I still use it for my VB6 legacy support work.
So far I have replaced it with a 9TB Raid 5 array and different backups for each day of the week Monday through Saturday. (Never work on Sunday). I tried Tortoise SVN but was extremely unhappy with the lack of documentation, and how cumbersome it is. I also tried TFS, with similar complaints.
If you know of anything for revision control NOT for someone working in a Team environment, I would love to hear about it.
It is hell getting old but still beats the alternative.
I would have recommended SVN, but you already tried it. Did you ever try the SVN command line without Tortoise? Just recursively commit your whole directory tree whenever you want to make a recovery point.
If you ever need to recover, pull the commit number you want into a new directory tree.
Mercurial or git with a local repository would probably have similar behaviors.
I am not sure what experience you have had, but I have been using it since it first came out. I have never had it corrupt any files for me. I guess that is because I don't work in a team environment and the things I store are pretty vanilla.
I guess I am just getting old and cranky but I wish MS would take UX into account when there is only one person using it. A good revision system for me would work like Source Safe does, (but without corrupting the files as you have experienced ).
One should not need to purchase a $50.00, 560 page book to learn how to use TFS or any other Revision software.
I've had many years of experience with VSS, both as developer and administrator, especially during the thick of its popularity.
It makes sense that it's less problematic for a person working alone. In a multiuser environment, it's absolutely awful.
It's funny you bring up TFS. It's lousy too, but for different reasons. It's maddening to work with and lots of people use it because it's bundled (which is how VSS got popular). That they're giving away a commercial product should tell us something about how committed Microsoft is to making it good. Come for the integration with Visual Studio, stay for the ... wait, why am I staying?
If you really like VSS's model and paradigm, there are a fair number of products, free and commercial, that are easy-to use, yet much more robust (and still kept fresh). I don't think you'll be sorry if you dig around and find one.
Hell, you can even use Perforce for free if you're all by yourself and your source base has fewer than 2000 files. You can use it either as simply or as complex as you like, and the GUI, though not flashy, is solid. It's really fast, too. Some folks don't like it, but it uses a similar checkin/checkout model as VSS. And it's probably the most reliable source control product made; even people who dislike its model don't deny its reliability.
There's a saying about VSS: It's not whether VSS will corrupt itself or not. It's when.
The name for the product is "Perforce HelixCore". It just used to be "Perforce", but you have to make it sound fancy these days. Here's a link to the free setup.
It consists of a server ("P4D") and some clients -- the P4V GUI and the P4 command line. The server can just run on the same system you develop with. No big deal. It's super low in resource usage.
The learning curve lies in setting up the server (not hard) and figuring out how to design a workspace layout. If you're just using the GUI ("P4V") and you have a typical source tree layout (if you're using VSS, then you almost surely have such a layout), it shouldn't take you very long to get used to it.
The command line is very powerful.
There are Visual Studio plugins that you can download from Perforce.