コード例 #1
0
    private void CommitFoldersAndFiles()
    {
        Boolean ifShowLog = false;

        StringBuilder pathBuilder = new StringBuilder();

        // 提交所有文件
        foreach (SVNToolPrefab prefab in storedPrefabs)
        {
            if (!prefab.ifSelected)
            {
                continue;
            }

            foreach (SVNToolFile file in prefab.contentFilePath)
            {
                if (SVNToolUtil.GetSVNToolFileStateJob(file.path))
                {
                    pathBuilder.Append(file.path.Trim()).Append(" ");
                }
            }
        }

        if (!String.IsNullOrEmpty(pathBuilder.ToString()))
        {
            ifShowLog = true;
            UESvnOperation.GetSvnOperation().CommitFile(pathBuilder.ToString());
        }

        // 提交所有文件夹
        foreach (SVNToolPrefab prefab in storedPrefabs)
        {
            if (!prefab.ifSelected)
            {
                continue;
            }

            foreach (SVNToolFolder folder in prefab.contentFolderPath)
            {
                folder.SetSVNToolFolderNeedSyncFoldersAndFiles(SVNToolUtil.GetNeedCommitSVNToolFileList(folder.path));

                if (folder.existFildOrFolderHasStatus)
                {
                    ifShowLog = true;
                    UESvnOperation.GetSvnOperation().CommitFile(folder.path);
                }
            }
        }

        // 如果存在可提交的内容,则展示日志
        if (ifShowLog)
        {
            UESvnOperation.GetSvnOperation().ShowCommitLog(Application.dataPath);
        }

        Close();
    }
コード例 #2
0
    /// <summary>
    /// 获取文件同步状态
    /// </summary>
    private void GetSVNToolObjStateJob(SVNToolPrefab prefab)
    {
        List <SVNToolFile> files = prefab.contentFilePath;

        for (Int32 i = 0; i < files.Count; i++)
        {
            SVNToolFile file = files[i];
            file.CanBeCommit = SVNToolUtil.GetSVNToolFileStateJob(file.path);
            // 获取文件的svn url
            file.SyncFileSVNURL();
        }
    }