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(); }
/// <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(); } }