// 更新预设中文件状态 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(); }
/// <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)); } }
/// <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(); } }
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; }