Beispiel #1
0
        public static void DeletePath(string root)
        {
            if (Directory.Exists(root))
            {
                ShellHelpers.EmptyPath(root);

                Directory.Delete(root, true);
            }
        }
Beispiel #2
0
        private static void DeleteRemovedFolders(string src, string dst)
        {
            if (Directory.Exists(dst))
            {
                foreach (string dstFolder in Directory.EnumerateDirectories(dst))
                {
                    string name;
                    string srcFolder;

                    name      = Path.GetFileName(dstFolder);
                    srcFolder = Path.Combine(src, name);

                    if (name != ".git" && !Directory.Exists(srcFolder))
                    {
                        ShellHelpers.DeletePath(dstFolder);
                    }
                }
            }
        }
Beispiel #3
0
        public static void EmptyPath(string root)
        {
            if (Directory.Exists(root))
            {
                Stack <string> paths;

                paths = new Stack <string>();
                paths.Push(root);

                do
                {
                    string path;

                    path = paths.Pop();

                    ShellHelpers.DeleteFiles(path);

                    foreach (string child in Directory.EnumerateDirectories(path))
                    {
                        paths.Push(child);
                    }
                } while (paths.Count > 0);
            }
        }