public override bool Commit(IEnumerable<string> assets, string commitMessage = "") { var filesInFolders = assets.AddFilesInFolders(vcc, true).AddedOrUnversionedParentFolders(vcc).ToArray(); var deletedInFolders = assets.AddDeletedInFolders(vcc); D.Log("Deleted In Folders: " + deletedInFolders.AggregateString()); bool result = base.Add(filesInFolders.UnversionedInVersionedFolder(vcc)) && base.Delete(filesInFolders.Missing(vcc), OperationMode.Normal) && base.Commit(filesInFolders.ShortestFirst(), commitMessage) && Status(assets, StatusLevel.Local) && ReleaseLock(assets); if (result) RemoveFromDatabase(deletedInFolders); return result; }
public override bool Commit(IEnumerable <string> assets, string commitMessage = "") { assets = ConsistentSlash(assets); var filesInFolders = ConsistentSlash(assets.AddFilesInFolders(vcc, true).AddedOrUnversionedParentFolders(vcc)); var deletedInFolders = assets.AddDeletedInFolders(vcc); bool result = base.Add(filesInFolders.UnversionedInVersionedFolder(vcc)) && base.Delete(filesInFolders.Missing(vcc), OperationMode.Normal) && base.Commit(filesInFolders.ShortestFirst(), commitMessage) && Status(assets, StatusLevel.Local) && ReleaseLock(assets); if (result) { RemoveFromDatabase(deletedInFolders); } return(result); }
public bool CommitDialog(IEnumerable <string> assets, bool showUserConfirmation = true, string commitMessage = "") { int initialAssetCount = assets.Count(); if (initialAssetCount == 0) { return(true); } assets = assets.AddFilesInFolders().AddFolders(vcc).AddMoveMatches(vcc); var dependencies = VCSettings.IncludeDepedenciesAsDefault ? assets.GetDependencies().AddFilesInFolders().AddFolders(vcc).Concat(assets.AddDeletedInFolders(vcc)) : new List <string>(); var allAssets = assets.Concat(dependencies).Distinct().ToList(); var localModified = allAssets.LocalModified(vcc); if (assets.Contains(SceneManagerUtilities.GetCurrentScenePath())) { SceneManagerUtilities.SaveCurrentModifiedScenesIfUserWantsTo(); } if (PreCommit != null) { PreCommit(allAssets); } if (VCSettings.RequireLockBeforeCommit && localModified.Any()) { string title = string.Format("{0} '{1}' files?", Terminology.getlock, Terminology.localModified); string message = string.Format("You are trying to commit files which are '{0}'.\nDo you want to '{1}' these files first?", Terminology.localModified, Terminology.getlock); if (EditorUtility.DisplayDialog(title, message, Terminology.getlock, "Abort")) { GetLock(localModified); } else { return(false); } } if (showUserConfirmation || initialAssetCount < (assets.Count() + dependencies.Count())) { return(OpenCommitDialogWindow(assets, dependencies)); } return(Commit(assets, commitMessage, VCSettings.NonRecursiveAdd)); }
public override bool Revert(IEnumerable <string> assets) { assets = ConsistentSlash(assets.AddFilesInFolders(vcc, true).LongestFirst()); return(assets.Any() ? base.Revert(assets) : true); }