Thursday, 12 June 2014

SVN - The Good The Bad and The Ugly

SVN - History

So Recently I was told by someone that SVN "Looses" History, because the information he committed is not there.

So I wanted to do some Experiments.

What I needed

  • Local SVN
  • Project
  • Files

Initially, I created a local SVN Using Tortoise SVN.
Then I created a small Hello World Project Using ADF, with one page, and as we all know, doing something so simple creates many folders.
First Commit

Browse


First Log

When I add a Task Flow, with a page, the commit looks like this;
Task Flow Commit

If you press ok, at this stage without any changes, you task flow WILL NOT, i repeat WILL Not be committed to SVN. The folder icon will also be changed to look like it has all been committed.

After this, there are two scenarios that may happen after this, if you carry on working from the same project, everything will work as expected.

If you download the project from SVN, you will get errors, most probably ones saying the pages do not exist.

SVN Commit

When doing this make sure, if any new files were added, add them to be committed. 
non-versioned Commit
Commit Log
Make sure the non-versioned Status has been Checked. This can be done by clicking all, just above the file names.

Log

Please Note: The Actions in the Log, in the above picture, there are only adds, and Modifies. In the Below One there is a delete as well as Modify.


One thing to note: is now that I have done all this, no matter what I do on the SVN, those logs will never be changed.

The only things that one can change are the Author and "Message"

This is a very limited example of a SVN Server with Revisions, but I just wanted to show that there are certain things that you cannot do with a SVN, and there are certain things that one needs to do, otherwise your SVN commits will break the application.

#bearMan, f