Ejemplo n.º 1
0
 // 更新预设中文件状态
 private void DoSyncSVNToolPrefabStatus(SVNToolPrefab prefab, Boolean checkIfInit = true)
 {
     if (null != prefab && (!checkIfInit || !prefab.initedFileStatus))
     {
         SVNToolUtil.GetSVNToolObjStateJobHandle(prefab);
         ifChooseDataDirty = true;
     }
 }
    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();
    }
Ejemplo n.º 3
0
    /// <summary>
    /// 获取文件夹状态
    /// </summary>
    private void GetSVNToolFolderStateJob(SVNToolPrefab prefab)
    {
        List <SVNToolFolder> folders = prefab.contentFolderPath;

        for (Int32 i = 0; i < folders.Count; i++)
        {
            SVNToolFolder folder = folders[i];
            folder.SetSVNToolFolderNeedSyncFoldersAndFiles(SVNToolUtil.GetNeedCommitSVNToolFileList(folder.path));
        }
    }
Ejemplo n.º 4
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();
        }
    }
Ejemplo n.º 5
0
    private void InitSyncSVNToolPrefabStatus()
    {
        List <SVNToolPrefab> initPrefabs = new List <SVNToolPrefab>();

        foreach (SVNToolPrefab prefab in storedPrefabs)
        {
            // Prefab 初始化
            prefab.InitSVNToolPrefabFileAndFolderInfo();
            // 同步Prefab的内容
            if (prefab.ifSelected)
            {
                initPrefabs.Add(prefab);
            }
        }

        if (initPrefabs.Count <= 0)
        {
            return;
        }

        SVNToolUtil.GetSVNToolObjStateJobHandle(initPrefabs);
        ifChooseDataDirty = true;
    }