public function copyPath($fromPath, $toPath, $commitMessage)
    {
        $this->_validateSvnConfig();

        $user = escapeshellarg($this->svnUsername);
        $pw = escapeshellarg($this->svnPassword);
        $fromPath = trim($fromPath, '/');
        $toPath = trim($toPath, '/');

        $fromPath = "{$this->svnRepository}/$fromPath/";
        $toPath = "{$this->svnRepository}/{$toPath}/";

        $svn = "svn copy --username {$user} --password {$pw} {$fromPath} {$toPath} --non-interactive -m \"{$commitMessage}\"";

        $this->Logger->debug($svn);

        $revision = trim(shell_exec($svn));

        $this->Logger->debug($revision);

        if(strpos($revision,'Committed revision') === FALSE) {
            throw new SubversionToolsException("Subversion copy failed.");
        }

        return $toPath;
    }