private void diffResetSubmoduleChanges_Click(object sender, EventArgs e) { var submodules = DiffFiles.SelectedItems.Where(it => it.IsSubmodule).Select(it => it.Name).Distinct().ToList(); // Show a form asking the user if they want to reset the changes. FormResetChanges.ActionEnum resetType = FormResetChanges.ShowResetDialog(this, true, true); if (resetType == FormResetChanges.ActionEnum.Cancel) { return; } foreach (var name in submodules) { GitModule module = Module.GetSubmodule(name); // Reset all changes. module.Reset(ResetMode.Hard); // Also delete new files, if requested. if (resetType == FormResetChanges.ActionEnum.ResetAndDelete) { module.Clean(CleanMode.OnlyNonIgnored, directories: true); } } RefreshArtificial(); }
public void ResetSubmodule(IWin32Window owner, SubmoduleNode node) { FormResetChanges.ActionEnum resetType = FormResetChanges.ShowResetDialog(owner, true, true); if (resetType == FormResetChanges.ActionEnum.Cancel) { return; } GitModule module = new GitModule(node.Info.Path); // Reset all changes. module.Reset(ResetMode.Hard); // Also delete new files, if requested. if (resetType == FormResetChanges.ActionEnum.ResetAndDelete) { module.Clean(CleanMode.OnlyNonIgnored, directories: true); } }