/// <summary>
        /// Do a no-op merge. (See: http://mercurial.selenic.com/wiki/PruningDeadBranches#No-Op_Merges)
        /// </summary>
        private void NoopMerge(HgRepository repo, Revision keeperRevision, Revision gonerRevision)
        {
            string optionalComment = null;

            using (var optionalCommentDlg = new OptionalCommentDlg())
            {
                if (optionalCommentDlg.ShowDialog(this) == DialogResult.OK && !string.IsNullOrWhiteSpace(optionalCommentDlg.OptionalComment))
                {
                    optionalComment = optionalCommentDlg.OptionalComment.Trim();
                }
            }

            // Merge goner into keeper.
            repo.Merge(_repoFolder, gonerRevision.Number.LocalRevisionNumber);

            // Revert the merge.
            repo.Execute(repo.SecondsBeforeTimeoutOnMergeOperation, "revert", "-a", "-r", keeperRevision.Number.LocalRevisionNumber);

            // Commit
            var comment = string.Format(@"No-Op Merge: Revert repository to revision '{0}'", keeperRevision.Number.LocalRevisionNumber);

            if (!string.IsNullOrWhiteSpace(optionalComment))
            {
                comment = string.Format(@"{0}. {1}", comment, optionalComment);
            }
            repo.Commit(true, comment);
        }
		/// <summary>
		/// Do a no-op merge. (See: http://mercurial.selenic.com/wiki/PruningDeadBranches#No-Op_Merges)
		/// </summary>
		private void NoopMerge(HgRepository repo, Revision keeperRevision, Revision gonerRevision)
		{
			string optionalComment = null;
			using (var optionalCommentDlg = new OptionalCommentDlg())
			{
				if (optionalCommentDlg.ShowDialog(this) == DialogResult.OK && !string.IsNullOrWhiteSpace(optionalCommentDlg.OptionalComment))
				{
					optionalComment = optionalCommentDlg.OptionalComment.Trim();
				}
			}

			// Merge goner into keeper.
			repo.Merge(_repoFolder, gonerRevision.Number.LocalRevisionNumber);

			// Revert the merge.
			repo.Execute(repo.SecondsBeforeTimeoutOnMergeOperation, "revert", "-a", "-r", keeperRevision.Number.LocalRevisionNumber);

			// Commit
			var comment = string.Format(@"No-Op Merge: Revert repository to revision '{0}'", keeperRevision.Number.LocalRevisionNumber);
			if (!string.IsNullOrWhiteSpace(optionalComment))
				comment = string.Format(@"{0}. {1}", comment, optionalComment);
			repo.Commit(true, comment);
		}