MinRCS Revision Control System
A Minimalist Revision Control System
Hello all. I'm very sure that many of you were depressed with the cancellation/hiatus of SkyDock Development.
Thread found here.
I was too.
I eventually got around to it, and decided to make my own Revision Control System. It is now supported by Windows. The VBscripts have been replaced by a single dynamic link library, improving stability, dependency, and compatibility.
It has only one main bug, which can be easily diagnosed. I am planning to fix it in the next release.
Also, instead of doing it in C++, I've decided on VB.NET, simply because it produces very small application filesizes. My goal is to be minimalist, hence the name, MinRCS.
The project files will be moved onto a SourceForge page soon, as well. Then you will have access to the entire repository.
Back up file revisions
Restore file revisions with soft overwrites (merging)
Repose only certain files
Lists all non-revision files and revisions in the selected folder
Open the folder in Windows Explorer
Create revisions with custom filetypes
Plugin Support (Similar to PGE)
Port to Java
Free Space Manager
People who want to help, you are welcome to use the source or help me in the main development.
I'm making the project fully open source at the start.
This is great, it surely will help with organizing anyone's ROM hacks that they're developing on. And even though SkyDock was lost to the sands of time, I'm positive that this tool will indeed achieve the stuff that SkyDock was originally planned to do when GigaUniverse was developing it.
Once it comes out in C++, I'll be definitely be using it.
Well, you're in luck. I've released it with a ton more functions.
The link is being updated.
Actually what this is use for?
is this program is for rom file size editing?
Just curious, how exactly does this handle revisions? A quick skim of the source indicated to me that it uses ZIP files, but I'm not entirely sure if that's the most efficient way to do this. First off, it wastes space. While GBA ROMs really aren't that big, having multiple copies of the same ROM can be a bit inefficient. What I'd recommend is a commit to commit binary diff system. That way you can store a history of different commits, and then select a specific commit and remove only what that commit added. And to revert to a specific point, have the utility store a second binary diff of all the changes up to that point to make for quick patching. Plus, with a binary diff, a hexadecimal diff viewer could be created showing different ranges of modifications.
If you're planning on porting to Java, I would gladly help. I've done a bit of work on my scripting editor, SEA (Source Code is here), and I've done some .NET -> Java porting with one of my programs. I'm glad that you decided to open-source this so that the rest of the hacking community could benefit (Although I regress that you decided to use SourceForge; I prefer Git to SVN. :)). If you could though, I'd much appreciate having the source up as fast as possible. One recommendation though, if you're open sourcing it, I'd recommend licensing it under GPL (GNU Public License) or MPL (Mozilla Public License). They're pretty much the same, but if you plan on using proprietary libraries (which will make Linux porting a pain), you'll have to use MPL. Both basically say that anything that is based on your program is required to open-source as well.
When one is making a hack, one would generally not worry too much about space. With a higher compression rate or implementing commits, the program would likely be slowed.
Also, I was in a hurry when I made this. I basically rewrote the whole thing into VB in one night. I know about General Public Licenses, I will implement the GPL soon. I doubt that anyone will actually would want to make this proprietary yet, so it's not something to worry about. This program will eventually turn into a module that can be used on a SkyDock-archetype that I will make. Its first three features will be this, PokeHex (whose thread I have stopped posting to for a while), and a free space manager, because it seemed to be a very popular idea.
Minimalist is what I need. Thank you.
|All times are UTC -8. The time now is 3:39 AM.|
© 2002 - 2015 The PokéCommunity™, pokecommunity.com.
Pokémon characters and images belong to The Pokémon Company International and Nintendo. This website is in no way affiliated with or endorsed by Nintendo, Creatures, GAMEFREAK, The Pokémon Company or The Pokémon Company International. We just love Pokémon.
All forum styles, their images (unless noted otherwise) and site designs are © 2002 - 2014 The PokéCommunity / PokéCommunity.com.
PokéCommunity™ is a trademark of The PokéCommunity. All rights reserved. Sponsor advertisements do not imply our endorsement of that product or service. User generated content remains the property of its creator.
Use of PokéCommunity Assets