private void OnChanged(object sender, FileSystemEventArgs fileSystemEventArgs)
        {
            lock (_lock)
            {
                if (!fileSystemEventArgs.FullPath.Contains(".cache")) //TODO: confirm this won't affect files names my MyVi.cache.gvi
                {
                    switch (fileSystemEventArgs.ChangeType)
                    {
                    case WatcherChangeTypes.Deleted:
                        _svnManager.Remove(fileSystemEventArgs.FullPath);
                        _svnManager.UpdateCache();
                        break;

                    case WatcherChangeTypes.Created:
                        //Physical add means we and to perform a svn add if we are in the project
                        var s = fileSystemEventArgs.FullPath.Split('\\');
                        Array.Resize(ref s, s.Length - 1);
                        var path = "";
                        foreach (var item in s)
                        {
                            path = path + item + "\\";
                        }
                        //if (path != svnCommitPath)
                        //{
                        _svnManager.AddToCache(fileSystemEventArgs.FullPath);
                        //}

                        break;

                    case WatcherChangeTypes.Changed:
                        //if (e.FullPath == fullPath)
                        //{
                        _svnManager.UpdateCache(fileSystemEventArgs.FullPath);
                        //}
                        break;
                    }
                }

                //previousEventType = e.ChangeType;
            }
        }