1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`MergeBranchesBySquash`](crate::operation::merge_branches_by_squash::builders::MergeBranchesBySquashFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`repository_name(impl Into<String>)`](crate::operation::merge_branches_by_squash::builders::MergeBranchesBySquashFluentBuilder::repository_name) / [`set_repository_name(Option<String>)`](crate::operation::merge_branches_by_squash::builders::MergeBranchesBySquashFluentBuilder::set_repository_name):<br>required: **true**<br><p>The name of the repository where you want to merge two branches.</p><br>
    ///   - [`source_commit_specifier(impl Into<String>)`](crate::operation::merge_branches_by_squash::builders::MergeBranchesBySquashFluentBuilder::source_commit_specifier) / [`set_source_commit_specifier(Option<String>)`](crate::operation::merge_branches_by_squash::builders::MergeBranchesBySquashFluentBuilder::set_source_commit_specifier):<br>required: **true**<br><p>The branch, tag, HEAD, or other fully qualified reference used to identify a commit (for example, a branch name or a full commit ID).</p><br>
    ///   - [`destination_commit_specifier(impl Into<String>)`](crate::operation::merge_branches_by_squash::builders::MergeBranchesBySquashFluentBuilder::destination_commit_specifier) / [`set_destination_commit_specifier(Option<String>)`](crate::operation::merge_branches_by_squash::builders::MergeBranchesBySquashFluentBuilder::set_destination_commit_specifier):<br>required: **true**<br><p>The branch, tag, HEAD, or other fully qualified reference used to identify a commit (for example, a branch name or a full commit ID).</p><br>
    ///   - [`target_branch(impl Into<String>)`](crate::operation::merge_branches_by_squash::builders::MergeBranchesBySquashFluentBuilder::target_branch) / [`set_target_branch(Option<String>)`](crate::operation::merge_branches_by_squash::builders::MergeBranchesBySquashFluentBuilder::set_target_branch):<br>required: **false**<br><p>The branch where the merge is applied.</p><br>
    ///   - [`conflict_detail_level(ConflictDetailLevelTypeEnum)`](crate::operation::merge_branches_by_squash::builders::MergeBranchesBySquashFluentBuilder::conflict_detail_level) / [`set_conflict_detail_level(Option<ConflictDetailLevelTypeEnum>)`](crate::operation::merge_branches_by_squash::builders::MergeBranchesBySquashFluentBuilder::set_conflict_detail_level):<br>required: **false**<br><p>The level of conflict detail to use. If unspecified, the default FILE_LEVEL is used, which returns a not-mergeable result if the same file has differences in both branches. If LINE_LEVEL is specified, a conflict is considered not mergeable if the same file in both branches has differences on the same line.</p><br>
    ///   - [`conflict_resolution_strategy(ConflictResolutionStrategyTypeEnum)`](crate::operation::merge_branches_by_squash::builders::MergeBranchesBySquashFluentBuilder::conflict_resolution_strategy) / [`set_conflict_resolution_strategy(Option<ConflictResolutionStrategyTypeEnum>)`](crate::operation::merge_branches_by_squash::builders::MergeBranchesBySquashFluentBuilder::set_conflict_resolution_strategy):<br>required: **false**<br><p>Specifies which branch to use when resolving conflicts, or whether to attempt automatically merging two versions of a file. The default is NONE, which requires any conflicts to be resolved manually before the merge operation is successful.</p><br>
    ///   - [`author_name(impl Into<String>)`](crate::operation::merge_branches_by_squash::builders::MergeBranchesBySquashFluentBuilder::author_name) / [`set_author_name(Option<String>)`](crate::operation::merge_branches_by_squash::builders::MergeBranchesBySquashFluentBuilder::set_author_name):<br>required: **false**<br><p>The name of the author who created the commit. This information is used as both the author and committer for the commit.</p><br>
    ///   - [`email(impl Into<String>)`](crate::operation::merge_branches_by_squash::builders::MergeBranchesBySquashFluentBuilder::email) / [`set_email(Option<String>)`](crate::operation::merge_branches_by_squash::builders::MergeBranchesBySquashFluentBuilder::set_email):<br>required: **false**<br><p>The email address of the person merging the branches. This information is used in the commit information for the merge.</p><br>
    ///   - [`commit_message(impl Into<String>)`](crate::operation::merge_branches_by_squash::builders::MergeBranchesBySquashFluentBuilder::commit_message) / [`set_commit_message(Option<String>)`](crate::operation::merge_branches_by_squash::builders::MergeBranchesBySquashFluentBuilder::set_commit_message):<br>required: **false**<br><p>The commit message for the merge.</p><br>
    ///   - [`keep_empty_folders(bool)`](crate::operation::merge_branches_by_squash::builders::MergeBranchesBySquashFluentBuilder::keep_empty_folders) / [`set_keep_empty_folders(Option<bool>)`](crate::operation::merge_branches_by_squash::builders::MergeBranchesBySquashFluentBuilder::set_keep_empty_folders):<br>required: **false**<br><p>If the commit contains deletions, whether to keep a folder or folder structure if the changes leave the folders empty. If this is specified as true, a .gitkeep file is created for empty folders. The default is false.</p><br>
    ///   - [`conflict_resolution(ConflictResolution)`](crate::operation::merge_branches_by_squash::builders::MergeBranchesBySquashFluentBuilder::conflict_resolution) / [`set_conflict_resolution(Option<ConflictResolution>)`](crate::operation::merge_branches_by_squash::builders::MergeBranchesBySquashFluentBuilder::set_conflict_resolution):<br>required: **false**<br><p>If AUTOMERGE is the conflict resolution strategy, a list of inputs to use when resolving conflicts during a merge.</p><br>
    /// - On success, responds with [`MergeBranchesBySquashOutput`](crate::operation::merge_branches_by_squash::MergeBranchesBySquashOutput) with field(s):
    ///   - [`commit_id(Option<String>)`](crate::operation::merge_branches_by_squash::MergeBranchesBySquashOutput::commit_id): <p>The commit ID of the merge in the destination or target branch.</p>
    ///   - [`tree_id(Option<String>)`](crate::operation::merge_branches_by_squash::MergeBranchesBySquashOutput::tree_id): <p>The tree ID of the merge in the destination or target branch.</p>
    /// - On failure, responds with [`SdkError<MergeBranchesBySquashError>`](crate::operation::merge_branches_by_squash::MergeBranchesBySquashError)
    pub fn merge_branches_by_squash(&self) -> crate::operation::merge_branches_by_squash::builders::MergeBranchesBySquashFluentBuilder {
        crate::operation::merge_branches_by_squash::builders::MergeBranchesBySquashFluentBuilder::new(self.handle.clone())
    }
}