There are a few similar questions but some of them are 5 years old (so there may be new stuff which are better) and the others don't cover all my requirements.
I am looking for suggestions for version control software.
i.e. checkin -r *.cpp -c "Added new stuff".
Shouldn't require me to add new directories in the repository. Adding a file in a directory should automatically add the directory - i.e. I need to create a new file A.java inside directory new. I will do
md new
cd new
// edit and create the file A.java
// create and checkin the new file A.java into the repository
// without complaining that the directory doesn't exist in the repository.
Should be easy to backup. i.e. Once a week I use SyncToy to backup stuff to an external harddisk. I don't mind using a different way to back the version control repositories into the external HDD, but it should be simple to backup - in case my laptop crashes, I should be able to recreate all the repositories including version history from the backup.
At different times in multi developer huge project environments, I have used perforce & CVS - liked perforce very much. Never liked CVS much but using the Tortoise UI for CVS made it bearable.
However, for these Version Control Systems, I was always a user - never an admin (i.e. the devs didn't manage the Version Control system - there were separate version control experts for that) - i.e. I have never created a new repository - so my knowledge is just client side stuff.
I know all my requirements may not be satisfied by any one system - but something which comes as close as possible would be great.
[Disclaimer: I use SVN for my job and personal projects, and have no experience with Mercurial.]
Most of you needs are covered with most of popular version control systems.
I was going to suggest SVN until read item about not adding directories. As far as I recall from description of Mercurial philosophy, it manages files, not directories, so it automatically adds any missing directories when a file is added.
Of course, with any popular version control system it's possible to implement such thing, but if you are looking for such functionality out of the box, probably you want to check Mercurial...
Although the subject is very offtopic here, I'll try
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With