aws-sdk-codecommit 1.21.0 → 1.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 618e025db363bb123d581352240171f67d3ee731
4
- data.tar.gz: 3c860e030dc73a38e291595ca00ddc64fbd4c1f2
3
+ metadata.gz: 735584f066f5068a0015ab583810e731b2930d53
4
+ data.tar.gz: 94702fa3b1b5efbe987f19d06aab96e1291e3085
5
5
  SHA512:
6
- metadata.gz: 6cc77868b2f01283e44fce718795bca5e326bc6880e6aa28adaa58cb3fd19d618efc7bc47576cef3eb6ca8a8ff73a25f54cbe3a36fb8e33af16024b1595206f3
7
- data.tar.gz: 2106d9dac5759c08e43b327ebcce8288901a87c88ad317f6d019ab68b2c62f109c1ce3e45bdb66c6a31d4c6a95ac8a605d4b6a4a38a3b357986a499c30ccb356
6
+ metadata.gz: b185dcb6ccc628158fa4b63d29e4ad470647ae378e3aae4b5c44ea0c4ce91b290724204aea10a93b1d1bdc03d2bab67a4f9bb6ed9f9afc0679aee36267ecaa9a
7
+ data.tar.gz: fe92dce65817de3ce3175585b5f996bb11599a9444ee9890b07317f43704f646480ab182388058550152566a4ec10b003cb386d90be7ae3f23e9eea42dadad5d
@@ -42,6 +42,6 @@ require_relative 'aws-sdk-codecommit/customizations'
42
42
  # @service
43
43
  module Aws::CodeCommit
44
44
 
45
- GEM_VERSION = '1.21.0'
45
+ GEM_VERSION = '1.22.0'
46
46
 
47
47
  end
@@ -260,6 +260,127 @@ module Aws::CodeCommit
260
260
 
261
261
  # @!group API Operations
262
262
 
263
+ # Returns information about one or more merge conflicts in the attempted
264
+ # merge of two commit specifiers using the squash or three-way merge
265
+ # strategy.
266
+ #
267
+ # @option params [required, String] :repository_name
268
+ # The name of the repository that contains the merge conflicts you want
269
+ # to review.
270
+ #
271
+ # @option params [required, String] :destination_commit_specifier
272
+ # The branch, tag, HEAD, or other fully qualified reference used to
273
+ # identify a commit. For example, a branch name or a full commit ID.
274
+ #
275
+ # @option params [required, String] :source_commit_specifier
276
+ # The branch, tag, HEAD, or other fully qualified reference used to
277
+ # identify a commit. For example, a branch name or a full commit ID.
278
+ #
279
+ # @option params [required, String] :merge_option
280
+ # The merge option or strategy you want to use to merge the code.
281
+ #
282
+ # @option params [Integer] :max_merge_hunks
283
+ # The maximum number of merge hunks to include in the output.
284
+ #
285
+ # @option params [Integer] :max_conflict_files
286
+ # The maximum number of files to include in the output.
287
+ #
288
+ # @option params [Array<String>] :file_paths
289
+ # The path of the target files used to describe the conflicts. If not
290
+ # specified, the default is all conflict files.
291
+ #
292
+ # @option params [String] :conflict_detail_level
293
+ # The level of conflict detail to use. If unspecified, the default
294
+ # FILE\_LEVEL is used, which will return a not mergeable result if the
295
+ # same file has differences in both branches. If LINE\_LEVEL is
296
+ # specified, a conflict will be considered not mergeable if the same
297
+ # file in both branches has differences on the same line.
298
+ #
299
+ # @option params [String] :conflict_resolution_strategy
300
+ # Specifies which branch to use when resolving conflicts, or whether to
301
+ # attempt automatically merging two versions of a file. The default is
302
+ # NONE, which requires any conflicts to be resolved manually before the
303
+ # merge operation will be successful.
304
+ #
305
+ # @option params [String] :next_token
306
+ # An enumeration token that when provided in a request, returns the next
307
+ # batch of the results.
308
+ #
309
+ # @return [Types::BatchDescribeMergeConflictsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
310
+ #
311
+ # * {Types::BatchDescribeMergeConflictsOutput#conflicts #conflicts} => Array&lt;Types::Conflict&gt;
312
+ # * {Types::BatchDescribeMergeConflictsOutput#next_token #next_token} => String
313
+ # * {Types::BatchDescribeMergeConflictsOutput#errors #errors} => Array&lt;Types::BatchDescribeMergeConflictsError&gt;
314
+ # * {Types::BatchDescribeMergeConflictsOutput#destination_commit_id #destination_commit_id} => String
315
+ # * {Types::BatchDescribeMergeConflictsOutput#source_commit_id #source_commit_id} => String
316
+ # * {Types::BatchDescribeMergeConflictsOutput#base_commit_id #base_commit_id} => String
317
+ #
318
+ # @example Request syntax with placeholder values
319
+ #
320
+ # resp = client.batch_describe_merge_conflicts({
321
+ # repository_name: "RepositoryName", # required
322
+ # destination_commit_specifier: "CommitName", # required
323
+ # source_commit_specifier: "CommitName", # required
324
+ # merge_option: "FAST_FORWARD_MERGE", # required, accepts FAST_FORWARD_MERGE, SQUASH_MERGE, THREE_WAY_MERGE
325
+ # max_merge_hunks: 1,
326
+ # max_conflict_files: 1,
327
+ # file_paths: ["Path"],
328
+ # conflict_detail_level: "FILE_LEVEL", # accepts FILE_LEVEL, LINE_LEVEL
329
+ # conflict_resolution_strategy: "NONE", # accepts NONE, ACCEPT_SOURCE, ACCEPT_DESTINATION, AUTOMERGE
330
+ # next_token: "NextToken",
331
+ # })
332
+ #
333
+ # @example Response structure
334
+ #
335
+ # resp.conflicts #=> Array
336
+ # resp.conflicts[0].conflict_metadata.file_path #=> String
337
+ # resp.conflicts[0].conflict_metadata.file_sizes.source #=> Integer
338
+ # resp.conflicts[0].conflict_metadata.file_sizes.destination #=> Integer
339
+ # resp.conflicts[0].conflict_metadata.file_sizes.base #=> Integer
340
+ # resp.conflicts[0].conflict_metadata.file_modes.source #=> String, one of "EXECUTABLE", "NORMAL", "SYMLINK"
341
+ # resp.conflicts[0].conflict_metadata.file_modes.destination #=> String, one of "EXECUTABLE", "NORMAL", "SYMLINK"
342
+ # resp.conflicts[0].conflict_metadata.file_modes.base #=> String, one of "EXECUTABLE", "NORMAL", "SYMLINK"
343
+ # resp.conflicts[0].conflict_metadata.object_types.source #=> String, one of "FILE", "DIRECTORY", "GIT_LINK", "SYMBOLIC_LINK"
344
+ # resp.conflicts[0].conflict_metadata.object_types.destination #=> String, one of "FILE", "DIRECTORY", "GIT_LINK", "SYMBOLIC_LINK"
345
+ # resp.conflicts[0].conflict_metadata.object_types.base #=> String, one of "FILE", "DIRECTORY", "GIT_LINK", "SYMBOLIC_LINK"
346
+ # resp.conflicts[0].conflict_metadata.number_of_conflicts #=> Integer
347
+ # resp.conflicts[0].conflict_metadata.is_binary_file.source #=> Boolean
348
+ # resp.conflicts[0].conflict_metadata.is_binary_file.destination #=> Boolean
349
+ # resp.conflicts[0].conflict_metadata.is_binary_file.base #=> Boolean
350
+ # resp.conflicts[0].conflict_metadata.content_conflict #=> Boolean
351
+ # resp.conflicts[0].conflict_metadata.file_mode_conflict #=> Boolean
352
+ # resp.conflicts[0].conflict_metadata.object_type_conflict #=> Boolean
353
+ # resp.conflicts[0].conflict_metadata.merge_operations.source #=> String, one of "A", "M", "D"
354
+ # resp.conflicts[0].conflict_metadata.merge_operations.destination #=> String, one of "A", "M", "D"
355
+ # resp.conflicts[0].merge_hunks #=> Array
356
+ # resp.conflicts[0].merge_hunks[0].is_conflict #=> Boolean
357
+ # resp.conflicts[0].merge_hunks[0].source.start_line #=> Integer
358
+ # resp.conflicts[0].merge_hunks[0].source.end_line #=> Integer
359
+ # resp.conflicts[0].merge_hunks[0].source.hunk_content #=> String
360
+ # resp.conflicts[0].merge_hunks[0].destination.start_line #=> Integer
361
+ # resp.conflicts[0].merge_hunks[0].destination.end_line #=> Integer
362
+ # resp.conflicts[0].merge_hunks[0].destination.hunk_content #=> String
363
+ # resp.conflicts[0].merge_hunks[0].base.start_line #=> Integer
364
+ # resp.conflicts[0].merge_hunks[0].base.end_line #=> Integer
365
+ # resp.conflicts[0].merge_hunks[0].base.hunk_content #=> String
366
+ # resp.next_token #=> String
367
+ # resp.errors #=> Array
368
+ # resp.errors[0].file_path #=> String
369
+ # resp.errors[0].exception_name #=> String
370
+ # resp.errors[0].message #=> String
371
+ # resp.destination_commit_id #=> String
372
+ # resp.source_commit_id #=> String
373
+ # resp.base_commit_id #=> String
374
+ #
375
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/BatchDescribeMergeConflicts AWS API Documentation
376
+ #
377
+ # @overload batch_describe_merge_conflicts(params = {})
378
+ # @param [Hash] params ({})
379
+ def batch_describe_merge_conflicts(params = {}, options = {})
380
+ req = build_request(:batch_describe_merge_conflicts, params)
381
+ req.send_request(options)
382
+ end
383
+
263
384
  # Returns information about one or more repositories.
264
385
  #
265
386
  # <note markdown="1"> The description field for a repository accepts all HTML characters and
@@ -373,7 +494,8 @@ module Aws::CodeCommit
373
494
  # @option params [Boolean] :keep_empty_folders
374
495
  # If the commit contains deletions, whether to keep a folder or folder
375
496
  # structure if the changes leave the folders empty. If this is specified
376
- # as true, a .gitkeep file will be created for empty folders.
497
+ # as true, a .gitkeep file will be created for empty folders. The
498
+ # default is false.
377
499
  #
378
500
  # @option params [Array<Types::PutFileEntry>] :put_files
379
501
  # The files to add or update in this commit.
@@ -521,6 +643,8 @@ module Aws::CodeCommit
521
643
  # resp.pull_request.pull_request_targets[0].merge_base #=> String
522
644
  # resp.pull_request.pull_request_targets[0].merge_metadata.is_merged #=> Boolean
523
645
  # resp.pull_request.pull_request_targets[0].merge_metadata.merged_by #=> String
646
+ # resp.pull_request.pull_request_targets[0].merge_metadata.merge_commit_id #=> String
647
+ # resp.pull_request.pull_request_targets[0].merge_metadata.merge_option #=> String, one of "FAST_FORWARD_MERGE", "SQUASH_MERGE", "THREE_WAY_MERGE"
524
648
  # resp.pull_request.client_request_token #=> String
525
649
  #
526
650
  # @see http://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/CreatePullRequest AWS API Documentation
@@ -600,6 +724,120 @@ module Aws::CodeCommit
600
724
  req.send_request(options)
601
725
  end
602
726
 
727
+ # Creates an unerferenced commit that represents the result of merging
728
+ # two branches using a specified merge strategy. This can help you
729
+ # determine the outcome of a potential merge.
730
+ #
731
+ # <note markdown="1"> This unreferenced merge commit can only be accessed using the
732
+ # GetCommit API or through git commands such as git fetch. To retrieve
733
+ # this commit, you must specify its commit ID or otherwise reference it.
734
+ #
735
+ # </note>
736
+ #
737
+ # @option params [required, String] :repository_name
738
+ # The name of the repository where you want to create the unreferenced
739
+ # merge commit.
740
+ #
741
+ # @option params [required, String] :source_commit_specifier
742
+ # The branch, tag, HEAD, or other fully qualified reference used to
743
+ # identify a commit. For example, a branch name or a full commit ID.
744
+ #
745
+ # @option params [required, String] :destination_commit_specifier
746
+ # The branch, tag, HEAD, or other fully qualified reference used to
747
+ # identify a commit. For example, a branch name or a full commit ID.
748
+ #
749
+ # @option params [required, String] :merge_option
750
+ # The merge option or strategy you want to use to merge the code.
751
+ #
752
+ # @option params [String] :conflict_detail_level
753
+ # The level of conflict detail to use. If unspecified, the default
754
+ # FILE\_LEVEL is used, which will return a not mergeable result if the
755
+ # same file has differences in both branches. If LINE\_LEVEL is
756
+ # specified, a conflict will be considered not mergeable if the same
757
+ # file in both branches has differences on the same line.
758
+ #
759
+ # @option params [String] :conflict_resolution_strategy
760
+ # Specifies which branch to use when resolving conflicts, or whether to
761
+ # attempt automatically merging two versions of a file. The default is
762
+ # NONE, which requires any conflicts to be resolved manually before the
763
+ # merge operation will be successful.
764
+ #
765
+ # @option params [String] :author_name
766
+ # The name of the author who created the unreferenced commit. This
767
+ # information will be used as both the author and committer for the
768
+ # commit.
769
+ #
770
+ # @option params [String] :email
771
+ # The email address for the person who created the unreferenced commit.
772
+ #
773
+ # @option params [String] :commit_message
774
+ # The commit message for the unreferenced commit.
775
+ #
776
+ # @option params [Boolean] :keep_empty_folders
777
+ # If the commit contains deletions, whether to keep a folder or folder
778
+ # structure if the changes leave the folders empty. If this is specified
779
+ # as true, a .gitkeep file will be created for empty folders. The
780
+ # default is false.
781
+ #
782
+ # @option params [Types::ConflictResolution] :conflict_resolution
783
+ # A list of inputs to use when resolving conflicts during a merge if
784
+ # AUTOMERGE is chosen as the conflict resolution strategy.
785
+ #
786
+ # @return [Types::CreateUnreferencedMergeCommitOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
787
+ #
788
+ # * {Types::CreateUnreferencedMergeCommitOutput#commit_id #commit_id} => String
789
+ # * {Types::CreateUnreferencedMergeCommitOutput#tree_id #tree_id} => String
790
+ #
791
+ # @example Request syntax with placeholder values
792
+ #
793
+ # resp = client.create_unreferenced_merge_commit({
794
+ # repository_name: "RepositoryName", # required
795
+ # source_commit_specifier: "CommitName", # required
796
+ # destination_commit_specifier: "CommitName", # required
797
+ # merge_option: "FAST_FORWARD_MERGE", # required, accepts FAST_FORWARD_MERGE, SQUASH_MERGE, THREE_WAY_MERGE
798
+ # conflict_detail_level: "FILE_LEVEL", # accepts FILE_LEVEL, LINE_LEVEL
799
+ # conflict_resolution_strategy: "NONE", # accepts NONE, ACCEPT_SOURCE, ACCEPT_DESTINATION, AUTOMERGE
800
+ # author_name: "Name",
801
+ # email: "Email",
802
+ # commit_message: "Message",
803
+ # keep_empty_folders: false,
804
+ # conflict_resolution: {
805
+ # replace_contents: [
806
+ # {
807
+ # file_path: "Path", # required
808
+ # replacement_type: "KEEP_BASE", # required, accepts KEEP_BASE, KEEP_SOURCE, KEEP_DESTINATION, USE_NEW_CONTENT
809
+ # content: "data",
810
+ # file_mode: "EXECUTABLE", # accepts EXECUTABLE, NORMAL, SYMLINK
811
+ # },
812
+ # ],
813
+ # delete_files: [
814
+ # {
815
+ # file_path: "Path", # required
816
+ # },
817
+ # ],
818
+ # set_file_modes: [
819
+ # {
820
+ # file_path: "Path", # required
821
+ # file_mode: "EXECUTABLE", # required, accepts EXECUTABLE, NORMAL, SYMLINK
822
+ # },
823
+ # ],
824
+ # },
825
+ # })
826
+ #
827
+ # @example Response structure
828
+ #
829
+ # resp.commit_id #=> String
830
+ # resp.tree_id #=> String
831
+ #
832
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/CreateUnreferencedMergeCommit AWS API Documentation
833
+ #
834
+ # @overload create_unreferenced_merge_commit(params = {})
835
+ # @param [Hash] params ({})
836
+ def create_unreferenced_merge_commit(params = {}, options = {})
837
+ req = build_request(:create_unreferenced_merge_commit, params)
838
+ req.send_request(options)
839
+ end
840
+
603
841
  # Deletes a branch from a repository, unless that branch is the default
604
842
  # branch for the repository.
605
843
  #
@@ -786,6 +1024,118 @@ module Aws::CodeCommit
786
1024
  req.send_request(options)
787
1025
  end
788
1026
 
1027
+ # Returns information about one or more merge conflicts in the attempted
1028
+ # merge of two commit specifiers using the squash or three-way merge
1029
+ # strategy. If the merge option for the attempted merge is specified as
1030
+ # FAST\_FORWARD\_MERGE, an exception will be thrown.
1031
+ #
1032
+ # @option params [required, String] :repository_name
1033
+ # The name of the repository where you want to get information about a
1034
+ # merge conflict.
1035
+ #
1036
+ # @option params [required, String] :destination_commit_specifier
1037
+ # The branch, tag, HEAD, or other fully qualified reference used to
1038
+ # identify a commit. For example, a branch name or a full commit ID.
1039
+ #
1040
+ # @option params [required, String] :source_commit_specifier
1041
+ # The branch, tag, HEAD, or other fully qualified reference used to
1042
+ # identify a commit. For example, a branch name or a full commit ID.
1043
+ #
1044
+ # @option params [required, String] :merge_option
1045
+ # The merge option or strategy you want to use to merge the code.
1046
+ #
1047
+ # @option params [Integer] :max_merge_hunks
1048
+ # The maximum number of merge hunks to include in the output.
1049
+ #
1050
+ # @option params [required, String] :file_path
1051
+ # The path of the target files used to describe the conflicts.
1052
+ #
1053
+ # @option params [String] :conflict_detail_level
1054
+ # The level of conflict detail to use. If unspecified, the default
1055
+ # FILE\_LEVEL is used, which will return a not mergeable result if the
1056
+ # same file has differences in both branches. If LINE\_LEVEL is
1057
+ # specified, a conflict will be considered not mergeable if the same
1058
+ # file in both branches has differences on the same line.
1059
+ #
1060
+ # @option params [String] :conflict_resolution_strategy
1061
+ # Specifies which branch to use when resolving conflicts, or whether to
1062
+ # attempt automatically merging two versions of a file. The default is
1063
+ # NONE, which requires any conflicts to be resolved manually before the
1064
+ # merge operation will be successful.
1065
+ #
1066
+ # @option params [String] :next_token
1067
+ # An enumeration token that when provided in a request, returns the next
1068
+ # batch of the results.
1069
+ #
1070
+ # @return [Types::DescribeMergeConflictsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1071
+ #
1072
+ # * {Types::DescribeMergeConflictsOutput#conflict_metadata #conflict_metadata} => Types::ConflictMetadata
1073
+ # * {Types::DescribeMergeConflictsOutput#merge_hunks #merge_hunks} => Array&lt;Types::MergeHunk&gt;
1074
+ # * {Types::DescribeMergeConflictsOutput#next_token #next_token} => String
1075
+ # * {Types::DescribeMergeConflictsOutput#destination_commit_id #destination_commit_id} => String
1076
+ # * {Types::DescribeMergeConflictsOutput#source_commit_id #source_commit_id} => String
1077
+ # * {Types::DescribeMergeConflictsOutput#base_commit_id #base_commit_id} => String
1078
+ #
1079
+ # @example Request syntax with placeholder values
1080
+ #
1081
+ # resp = client.describe_merge_conflicts({
1082
+ # repository_name: "RepositoryName", # required
1083
+ # destination_commit_specifier: "CommitName", # required
1084
+ # source_commit_specifier: "CommitName", # required
1085
+ # merge_option: "FAST_FORWARD_MERGE", # required, accepts FAST_FORWARD_MERGE, SQUASH_MERGE, THREE_WAY_MERGE
1086
+ # max_merge_hunks: 1,
1087
+ # file_path: "Path", # required
1088
+ # conflict_detail_level: "FILE_LEVEL", # accepts FILE_LEVEL, LINE_LEVEL
1089
+ # conflict_resolution_strategy: "NONE", # accepts NONE, ACCEPT_SOURCE, ACCEPT_DESTINATION, AUTOMERGE
1090
+ # next_token: "NextToken",
1091
+ # })
1092
+ #
1093
+ # @example Response structure
1094
+ #
1095
+ # resp.conflict_metadata.file_path #=> String
1096
+ # resp.conflict_metadata.file_sizes.source #=> Integer
1097
+ # resp.conflict_metadata.file_sizes.destination #=> Integer
1098
+ # resp.conflict_metadata.file_sizes.base #=> Integer
1099
+ # resp.conflict_metadata.file_modes.source #=> String, one of "EXECUTABLE", "NORMAL", "SYMLINK"
1100
+ # resp.conflict_metadata.file_modes.destination #=> String, one of "EXECUTABLE", "NORMAL", "SYMLINK"
1101
+ # resp.conflict_metadata.file_modes.base #=> String, one of "EXECUTABLE", "NORMAL", "SYMLINK"
1102
+ # resp.conflict_metadata.object_types.source #=> String, one of "FILE", "DIRECTORY", "GIT_LINK", "SYMBOLIC_LINK"
1103
+ # resp.conflict_metadata.object_types.destination #=> String, one of "FILE", "DIRECTORY", "GIT_LINK", "SYMBOLIC_LINK"
1104
+ # resp.conflict_metadata.object_types.base #=> String, one of "FILE", "DIRECTORY", "GIT_LINK", "SYMBOLIC_LINK"
1105
+ # resp.conflict_metadata.number_of_conflicts #=> Integer
1106
+ # resp.conflict_metadata.is_binary_file.source #=> Boolean
1107
+ # resp.conflict_metadata.is_binary_file.destination #=> Boolean
1108
+ # resp.conflict_metadata.is_binary_file.base #=> Boolean
1109
+ # resp.conflict_metadata.content_conflict #=> Boolean
1110
+ # resp.conflict_metadata.file_mode_conflict #=> Boolean
1111
+ # resp.conflict_metadata.object_type_conflict #=> Boolean
1112
+ # resp.conflict_metadata.merge_operations.source #=> String, one of "A", "M", "D"
1113
+ # resp.conflict_metadata.merge_operations.destination #=> String, one of "A", "M", "D"
1114
+ # resp.merge_hunks #=> Array
1115
+ # resp.merge_hunks[0].is_conflict #=> Boolean
1116
+ # resp.merge_hunks[0].source.start_line #=> Integer
1117
+ # resp.merge_hunks[0].source.end_line #=> Integer
1118
+ # resp.merge_hunks[0].source.hunk_content #=> String
1119
+ # resp.merge_hunks[0].destination.start_line #=> Integer
1120
+ # resp.merge_hunks[0].destination.end_line #=> Integer
1121
+ # resp.merge_hunks[0].destination.hunk_content #=> String
1122
+ # resp.merge_hunks[0].base.start_line #=> Integer
1123
+ # resp.merge_hunks[0].base.end_line #=> Integer
1124
+ # resp.merge_hunks[0].base.hunk_content #=> String
1125
+ # resp.next_token #=> String
1126
+ # resp.destination_commit_id #=> String
1127
+ # resp.source_commit_id #=> String
1128
+ # resp.base_commit_id #=> String
1129
+ #
1130
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/DescribeMergeConflicts AWS API Documentation
1131
+ #
1132
+ # @overload describe_merge_conflicts(params = {})
1133
+ # @param [Hash] params ({})
1134
+ def describe_merge_conflicts(params = {}, options = {})
1135
+ req = build_request(:describe_merge_conflicts, params)
1136
+ req.send_request(options)
1137
+ end
1138
+
789
1139
  # Returns information about one or more pull request events.
790
1140
  #
791
1141
  # @option params [required, String] :pull_request_id
@@ -845,6 +1195,8 @@ module Aws::CodeCommit
845
1195
  # resp.pull_request_events[0].pull_request_merged_state_changed_event_metadata.destination_reference #=> String
846
1196
  # resp.pull_request_events[0].pull_request_merged_state_changed_event_metadata.merge_metadata.is_merged #=> Boolean
847
1197
  # resp.pull_request_events[0].pull_request_merged_state_changed_event_metadata.merge_metadata.merged_by #=> String
1198
+ # resp.pull_request_events[0].pull_request_merged_state_changed_event_metadata.merge_metadata.merge_commit_id #=> String
1199
+ # resp.pull_request_events[0].pull_request_merged_state_changed_event_metadata.merge_metadata.merge_option #=> String, one of "FAST_FORWARD_MERGE", "SQUASH_MERGE", "THREE_WAY_MERGE"
848
1200
  # resp.next_token #=> String
849
1201
  #
850
1202
  # @see http://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/DescribePullRequestEvents AWS API Documentation
@@ -1344,6 +1696,66 @@ module Aws::CodeCommit
1344
1696
  req.send_request(options)
1345
1697
  end
1346
1698
 
1699
+ # Returns information about a specified merge commit.
1700
+ #
1701
+ # @option params [required, String] :repository_name
1702
+ # The name of the repository that contains the merge commit about which
1703
+ # you want to get information.
1704
+ #
1705
+ # @option params [required, String] :source_commit_specifier
1706
+ # The branch, tag, HEAD, or other fully qualified reference used to
1707
+ # identify a commit. For example, a branch name or a full commit ID.
1708
+ #
1709
+ # @option params [required, String] :destination_commit_specifier
1710
+ # The branch, tag, HEAD, or other fully qualified reference used to
1711
+ # identify a commit. For example, a branch name or a full commit ID.
1712
+ #
1713
+ # @option params [String] :conflict_detail_level
1714
+ # The level of conflict detail to use. If unspecified, the default
1715
+ # FILE\_LEVEL is used, which will return a not mergeable result if the
1716
+ # same file has differences in both branches. If LINE\_LEVEL is
1717
+ # specified, a conflict will be considered not mergeable if the same
1718
+ # file in both branches has differences on the same line.
1719
+ #
1720
+ # @option params [String] :conflict_resolution_strategy
1721
+ # Specifies which branch to use when resolving conflicts, or whether to
1722
+ # attempt automatically merging two versions of a file. The default is
1723
+ # NONE, which requires any conflicts to be resolved manually before the
1724
+ # merge operation will be successful.
1725
+ #
1726
+ # @return [Types::GetMergeCommitOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1727
+ #
1728
+ # * {Types::GetMergeCommitOutput#source_commit_id #source_commit_id} => String
1729
+ # * {Types::GetMergeCommitOutput#destination_commit_id #destination_commit_id} => String
1730
+ # * {Types::GetMergeCommitOutput#base_commit_id #base_commit_id} => String
1731
+ # * {Types::GetMergeCommitOutput#merged_commit_id #merged_commit_id} => String
1732
+ #
1733
+ # @example Request syntax with placeholder values
1734
+ #
1735
+ # resp = client.get_merge_commit({
1736
+ # repository_name: "RepositoryName", # required
1737
+ # source_commit_specifier: "CommitName", # required
1738
+ # destination_commit_specifier: "CommitName", # required
1739
+ # conflict_detail_level: "FILE_LEVEL", # accepts FILE_LEVEL, LINE_LEVEL
1740
+ # conflict_resolution_strategy: "NONE", # accepts NONE, ACCEPT_SOURCE, ACCEPT_DESTINATION, AUTOMERGE
1741
+ # })
1742
+ #
1743
+ # @example Response structure
1744
+ #
1745
+ # resp.source_commit_id #=> String
1746
+ # resp.destination_commit_id #=> String
1747
+ # resp.base_commit_id #=> String
1748
+ # resp.merged_commit_id #=> String
1749
+ #
1750
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/GetMergeCommit AWS API Documentation
1751
+ #
1752
+ # @overload get_merge_commit(params = {})
1753
+ # @param [Hash] params ({})
1754
+ def get_merge_commit(params = {}, options = {})
1755
+ req = build_request(:get_merge_commit, params)
1756
+ req.send_request(options)
1757
+ end
1758
+
1347
1759
  # Returns information about merge conflicts between the before and after
1348
1760
  # commit IDs for a pull request in a repository.
1349
1761
  #
@@ -1359,14 +1771,36 @@ module Aws::CodeCommit
1359
1771
  # identify a commit. For example, a branch name or a full commit ID.
1360
1772
  #
1361
1773
  # @option params [required, String] :merge_option
1362
- # The merge option or strategy you want to use to merge the code. The
1363
- # only valid value is FAST\_FORWARD\_MERGE.
1774
+ # The merge option or strategy you want to use to merge the code.
1775
+ #
1776
+ # @option params [String] :conflict_detail_level
1777
+ # The level of conflict detail to use. If unspecified, the default
1778
+ # FILE\_LEVEL is used, which will return a not mergeable result if the
1779
+ # same file has differences in both branches. If LINE\_LEVEL is
1780
+ # specified, a conflict will be considered not mergeable if the same
1781
+ # file in both branches has differences on the same line.
1782
+ #
1783
+ # @option params [Integer] :max_conflict_files
1784
+ # The maximum number of files to include in the output.
1785
+ #
1786
+ # @option params [String] :conflict_resolution_strategy
1787
+ # Specifies which branch to use when resolving conflicts, or whether to
1788
+ # attempt automatically merging two versions of a file. The default is
1789
+ # NONE, which requires any conflicts to be resolved manually before the
1790
+ # merge operation will be successful.
1791
+ #
1792
+ # @option params [String] :next_token
1793
+ # An enumeration token that when provided in a request, returns the next
1794
+ # batch of the results.
1364
1795
  #
1365
1796
  # @return [Types::GetMergeConflictsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1366
1797
  #
1367
1798
  # * {Types::GetMergeConflictsOutput#mergeable #mergeable} => Boolean
1368
1799
  # * {Types::GetMergeConflictsOutput#destination_commit_id #destination_commit_id} => String
1369
1800
  # * {Types::GetMergeConflictsOutput#source_commit_id #source_commit_id} => String
1801
+ # * {Types::GetMergeConflictsOutput#base_commit_id #base_commit_id} => String
1802
+ # * {Types::GetMergeConflictsOutput#conflict_metadata_list #conflict_metadata_list} => Array&lt;Types::ConflictMetadata&gt;
1803
+ # * {Types::GetMergeConflictsOutput#next_token #next_token} => String
1370
1804
  #
1371
1805
  # @example Request syntax with placeholder values
1372
1806
  #
@@ -1374,7 +1808,11 @@ module Aws::CodeCommit
1374
1808
  # repository_name: "RepositoryName", # required
1375
1809
  # destination_commit_specifier: "CommitName", # required
1376
1810
  # source_commit_specifier: "CommitName", # required
1377
- # merge_option: "FAST_FORWARD_MERGE", # required, accepts FAST_FORWARD_MERGE
1811
+ # merge_option: "FAST_FORWARD_MERGE", # required, accepts FAST_FORWARD_MERGE, SQUASH_MERGE, THREE_WAY_MERGE
1812
+ # conflict_detail_level: "FILE_LEVEL", # accepts FILE_LEVEL, LINE_LEVEL
1813
+ # max_conflict_files: 1,
1814
+ # conflict_resolution_strategy: "NONE", # accepts NONE, ACCEPT_SOURCE, ACCEPT_DESTINATION, AUTOMERGE
1815
+ # next_token: "NextToken",
1378
1816
  # })
1379
1817
  #
1380
1818
  # @example Response structure
@@ -1382,6 +1820,28 @@ module Aws::CodeCommit
1382
1820
  # resp.mergeable #=> Boolean
1383
1821
  # resp.destination_commit_id #=> String
1384
1822
  # resp.source_commit_id #=> String
1823
+ # resp.base_commit_id #=> String
1824
+ # resp.conflict_metadata_list #=> Array
1825
+ # resp.conflict_metadata_list[0].file_path #=> String
1826
+ # resp.conflict_metadata_list[0].file_sizes.source #=> Integer
1827
+ # resp.conflict_metadata_list[0].file_sizes.destination #=> Integer
1828
+ # resp.conflict_metadata_list[0].file_sizes.base #=> Integer
1829
+ # resp.conflict_metadata_list[0].file_modes.source #=> String, one of "EXECUTABLE", "NORMAL", "SYMLINK"
1830
+ # resp.conflict_metadata_list[0].file_modes.destination #=> String, one of "EXECUTABLE", "NORMAL", "SYMLINK"
1831
+ # resp.conflict_metadata_list[0].file_modes.base #=> String, one of "EXECUTABLE", "NORMAL", "SYMLINK"
1832
+ # resp.conflict_metadata_list[0].object_types.source #=> String, one of "FILE", "DIRECTORY", "GIT_LINK", "SYMBOLIC_LINK"
1833
+ # resp.conflict_metadata_list[0].object_types.destination #=> String, one of "FILE", "DIRECTORY", "GIT_LINK", "SYMBOLIC_LINK"
1834
+ # resp.conflict_metadata_list[0].object_types.base #=> String, one of "FILE", "DIRECTORY", "GIT_LINK", "SYMBOLIC_LINK"
1835
+ # resp.conflict_metadata_list[0].number_of_conflicts #=> Integer
1836
+ # resp.conflict_metadata_list[0].is_binary_file.source #=> Boolean
1837
+ # resp.conflict_metadata_list[0].is_binary_file.destination #=> Boolean
1838
+ # resp.conflict_metadata_list[0].is_binary_file.base #=> Boolean
1839
+ # resp.conflict_metadata_list[0].content_conflict #=> Boolean
1840
+ # resp.conflict_metadata_list[0].file_mode_conflict #=> Boolean
1841
+ # resp.conflict_metadata_list[0].object_type_conflict #=> Boolean
1842
+ # resp.conflict_metadata_list[0].merge_operations.source #=> String, one of "A", "M", "D"
1843
+ # resp.conflict_metadata_list[0].merge_operations.destination #=> String, one of "A", "M", "D"
1844
+ # resp.next_token #=> String
1385
1845
  #
1386
1846
  # @see http://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/GetMergeConflicts AWS API Documentation
1387
1847
  #
@@ -1392,6 +1852,69 @@ module Aws::CodeCommit
1392
1852
  req.send_request(options)
1393
1853
  end
1394
1854
 
1855
+ # Returns information about the merge options available for merging two
1856
+ # specified branches. For details about why a particular merge option is
1857
+ # not available, use GetMergeConflicts or DescribeMergeConflicts.
1858
+ #
1859
+ # @option params [required, String] :repository_name
1860
+ # The name of the repository that contains the commits about which you
1861
+ # want to get merge options.
1862
+ #
1863
+ # @option params [required, String] :source_commit_specifier
1864
+ # The branch, tag, HEAD, or other fully qualified reference used to
1865
+ # identify a commit. For example, a branch name or a full commit ID.
1866
+ #
1867
+ # @option params [required, String] :destination_commit_specifier
1868
+ # The branch, tag, HEAD, or other fully qualified reference used to
1869
+ # identify a commit. For example, a branch name or a full commit ID.
1870
+ #
1871
+ # @option params [String] :conflict_detail_level
1872
+ # The level of conflict detail to use. If unspecified, the default
1873
+ # FILE\_LEVEL is used, which will return a not mergeable result if the
1874
+ # same file has differences in both branches. If LINE\_LEVEL is
1875
+ # specified, a conflict will be considered not mergeable if the same
1876
+ # file in both branches has differences on the same line.
1877
+ #
1878
+ # @option params [String] :conflict_resolution_strategy
1879
+ # Specifies which branch to use when resolving conflicts, or whether to
1880
+ # attempt automatically merging two versions of a file. The default is
1881
+ # NONE, which requires any conflicts to be resolved manually before the
1882
+ # merge operation will be successful.
1883
+ #
1884
+ # @return [Types::GetMergeOptionsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1885
+ #
1886
+ # * {Types::GetMergeOptionsOutput#merge_options #merge_options} => Array&lt;String&gt;
1887
+ # * {Types::GetMergeOptionsOutput#source_commit_id #source_commit_id} => String
1888
+ # * {Types::GetMergeOptionsOutput#destination_commit_id #destination_commit_id} => String
1889
+ # * {Types::GetMergeOptionsOutput#base_commit_id #base_commit_id} => String
1890
+ #
1891
+ # @example Request syntax with placeholder values
1892
+ #
1893
+ # resp = client.get_merge_options({
1894
+ # repository_name: "RepositoryName", # required
1895
+ # source_commit_specifier: "CommitName", # required
1896
+ # destination_commit_specifier: "CommitName", # required
1897
+ # conflict_detail_level: "FILE_LEVEL", # accepts FILE_LEVEL, LINE_LEVEL
1898
+ # conflict_resolution_strategy: "NONE", # accepts NONE, ACCEPT_SOURCE, ACCEPT_DESTINATION, AUTOMERGE
1899
+ # })
1900
+ #
1901
+ # @example Response structure
1902
+ #
1903
+ # resp.merge_options #=> Array
1904
+ # resp.merge_options[0] #=> String, one of "FAST_FORWARD_MERGE", "SQUASH_MERGE", "THREE_WAY_MERGE"
1905
+ # resp.source_commit_id #=> String
1906
+ # resp.destination_commit_id #=> String
1907
+ # resp.base_commit_id #=> String
1908
+ #
1909
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/GetMergeOptions AWS API Documentation
1910
+ #
1911
+ # @overload get_merge_options(params = {})
1912
+ # @param [Hash] params ({})
1913
+ def get_merge_options(params = {}, options = {})
1914
+ req = build_request(:get_merge_options, params)
1915
+ req.send_request(options)
1916
+ end
1917
+
1395
1918
  # Gets information about a pull request in a specified repository.
1396
1919
  #
1397
1920
  # @option params [required, String] :pull_request_id
@@ -1426,6 +1949,8 @@ module Aws::CodeCommit
1426
1949
  # resp.pull_request.pull_request_targets[0].merge_base #=> String
1427
1950
  # resp.pull_request.pull_request_targets[0].merge_metadata.is_merged #=> Boolean
1428
1951
  # resp.pull_request.pull_request_targets[0].merge_metadata.merged_by #=> String
1952
+ # resp.pull_request.pull_request_targets[0].merge_metadata.merge_commit_id #=> String
1953
+ # resp.pull_request.pull_request_targets[0].merge_metadata.merge_option #=> String, one of "FAST_FORWARD_MERGE", "SQUASH_MERGE", "THREE_WAY_MERGE"
1429
1954
  # resp.pull_request.client_request_token #=> String
1430
1955
  #
1431
1956
  # @see http://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/GetPullRequest AWS API Documentation
@@ -1696,53 +2221,309 @@ module Aws::CodeCommit
1696
2221
  req.send_request(options)
1697
2222
  end
1698
2223
 
1699
- # Closes a pull request and attempts to merge the source commit of a
1700
- # pull request into the specified destination branch for that pull
1701
- # request at the specified commit using the fast-forward merge option.
1702
- #
1703
- # @option params [required, String] :pull_request_id
1704
- # The system-generated ID of the pull request. To get this ID, use
1705
- # ListPullRequests.
2224
+ # Merges two branches using the fast-forward merge strategy.
1706
2225
  #
1707
2226
  # @option params [required, String] :repository_name
1708
- # The name of the repository where the pull request was created.
2227
+ # The name of the repository where you want to merge two branches.
1709
2228
  #
1710
- # @option params [String] :source_commit_id
1711
- # The full commit ID of the original or updated commit in the pull
1712
- # request source branch. Pass this value if you want an exception thrown
1713
- # if the current commit ID of the tip of the source branch does not
1714
- # match this commit ID.
2229
+ # @option params [required, String] :source_commit_specifier
2230
+ # The branch, tag, HEAD, or other fully qualified reference used to
2231
+ # identify a commit. For example, a branch name or a full commit ID.
1715
2232
  #
1716
- # @return [Types::MergePullRequestByFastForwardOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2233
+ # @option params [required, String] :destination_commit_specifier
2234
+ # The branch, tag, HEAD, or other fully qualified reference used to
2235
+ # identify a commit. For example, a branch name or a full commit ID.
1717
2236
  #
1718
- # * {Types::MergePullRequestByFastForwardOutput#pull_request #pull_request} => Types::PullRequest
2237
+ # @option params [String] :target_branch
2238
+ # The branch where the merge will be applied.
2239
+ #
2240
+ # @return [Types::MergeBranchesByFastForwardOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2241
+ #
2242
+ # * {Types::MergeBranchesByFastForwardOutput#commit_id #commit_id} => String
2243
+ # * {Types::MergeBranchesByFastForwardOutput#tree_id #tree_id} => String
1719
2244
  #
1720
2245
  # @example Request syntax with placeholder values
1721
2246
  #
1722
- # resp = client.merge_pull_request_by_fast_forward({
1723
- # pull_request_id: "PullRequestId", # required
2247
+ # resp = client.merge_branches_by_fast_forward({
1724
2248
  # repository_name: "RepositoryName", # required
1725
- # source_commit_id: "CommitId",
2249
+ # source_commit_specifier: "CommitName", # required
2250
+ # destination_commit_specifier: "CommitName", # required
2251
+ # target_branch: "BranchName",
1726
2252
  # })
1727
2253
  #
1728
2254
  # @example Response structure
1729
2255
  #
1730
- # resp.pull_request.pull_request_id #=> String
1731
- # resp.pull_request.title #=> String
1732
- # resp.pull_request.description #=> String
1733
- # resp.pull_request.last_activity_date #=> Time
1734
- # resp.pull_request.creation_date #=> Time
1735
- # resp.pull_request.pull_request_status #=> String, one of "OPEN", "CLOSED"
1736
- # resp.pull_request.author_arn #=> String
1737
- # resp.pull_request.pull_request_targets #=> Array
1738
- # resp.pull_request.pull_request_targets[0].repository_name #=> String
1739
- # resp.pull_request.pull_request_targets[0].source_reference #=> String
1740
- # resp.pull_request.pull_request_targets[0].destination_reference #=> String
2256
+ # resp.commit_id #=> String
2257
+ # resp.tree_id #=> String
2258
+ #
2259
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/MergeBranchesByFastForward AWS API Documentation
2260
+ #
2261
+ # @overload merge_branches_by_fast_forward(params = {})
2262
+ # @param [Hash] params ({})
2263
+ def merge_branches_by_fast_forward(params = {}, options = {})
2264
+ req = build_request(:merge_branches_by_fast_forward, params)
2265
+ req.send_request(options)
2266
+ end
2267
+
2268
+ # Merges two branches using the squash merge strategy.
2269
+ #
2270
+ # @option params [required, String] :repository_name
2271
+ # The name of the repository where you want to merge two branches.
2272
+ #
2273
+ # @option params [required, String] :source_commit_specifier
2274
+ # The branch, tag, HEAD, or other fully qualified reference used to
2275
+ # identify a commit. For example, a branch name or a full commit ID.
2276
+ #
2277
+ # @option params [required, String] :destination_commit_specifier
2278
+ # The branch, tag, HEAD, or other fully qualified reference used to
2279
+ # identify a commit. For example, a branch name or a full commit ID.
2280
+ #
2281
+ # @option params [String] :target_branch
2282
+ # The branch where the merge will be applied.
2283
+ #
2284
+ # @option params [String] :conflict_detail_level
2285
+ # The level of conflict detail to use. If unspecified, the default
2286
+ # FILE\_LEVEL is used, which will return a not mergeable result if the
2287
+ # same file has differences in both branches. If LINE\_LEVEL is
2288
+ # specified, a conflict will be considered not mergeable if the same
2289
+ # file in both branches has differences on the same line.
2290
+ #
2291
+ # @option params [String] :conflict_resolution_strategy
2292
+ # Specifies which branch to use when resolving conflicts, or whether to
2293
+ # attempt automatically merging two versions of a file. The default is
2294
+ # NONE, which requires any conflicts to be resolved manually before the
2295
+ # merge operation will be successful.
2296
+ #
2297
+ # @option params [String] :author_name
2298
+ # The name of the author who created the commit. This information will
2299
+ # be used as both the author and committer for the commit.
2300
+ #
2301
+ # @option params [String] :email
2302
+ # The email address of the person merging the branches. This information
2303
+ # will be used in the commit information for the merge.
2304
+ #
2305
+ # @option params [String] :commit_message
2306
+ # The commit message for the merge.
2307
+ #
2308
+ # @option params [Boolean] :keep_empty_folders
2309
+ # If the commit contains deletions, whether to keep a folder or folder
2310
+ # structure if the changes leave the folders empty. If this is specified
2311
+ # as true, a .gitkeep file will be created for empty folders. The
2312
+ # default is false.
2313
+ #
2314
+ # @option params [Types::ConflictResolution] :conflict_resolution
2315
+ # A list of inputs to use when resolving conflicts during a merge if
2316
+ # AUTOMERGE is chosen as the conflict resolution strategy.
2317
+ #
2318
+ # @return [Types::MergeBranchesBySquashOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2319
+ #
2320
+ # * {Types::MergeBranchesBySquashOutput#commit_id #commit_id} => String
2321
+ # * {Types::MergeBranchesBySquashOutput#tree_id #tree_id} => String
2322
+ #
2323
+ # @example Request syntax with placeholder values
2324
+ #
2325
+ # resp = client.merge_branches_by_squash({
2326
+ # repository_name: "RepositoryName", # required
2327
+ # source_commit_specifier: "CommitName", # required
2328
+ # destination_commit_specifier: "CommitName", # required
2329
+ # target_branch: "BranchName",
2330
+ # conflict_detail_level: "FILE_LEVEL", # accepts FILE_LEVEL, LINE_LEVEL
2331
+ # conflict_resolution_strategy: "NONE", # accepts NONE, ACCEPT_SOURCE, ACCEPT_DESTINATION, AUTOMERGE
2332
+ # author_name: "Name",
2333
+ # email: "Email",
2334
+ # commit_message: "Message",
2335
+ # keep_empty_folders: false,
2336
+ # conflict_resolution: {
2337
+ # replace_contents: [
2338
+ # {
2339
+ # file_path: "Path", # required
2340
+ # replacement_type: "KEEP_BASE", # required, accepts KEEP_BASE, KEEP_SOURCE, KEEP_DESTINATION, USE_NEW_CONTENT
2341
+ # content: "data",
2342
+ # file_mode: "EXECUTABLE", # accepts EXECUTABLE, NORMAL, SYMLINK
2343
+ # },
2344
+ # ],
2345
+ # delete_files: [
2346
+ # {
2347
+ # file_path: "Path", # required
2348
+ # },
2349
+ # ],
2350
+ # set_file_modes: [
2351
+ # {
2352
+ # file_path: "Path", # required
2353
+ # file_mode: "EXECUTABLE", # required, accepts EXECUTABLE, NORMAL, SYMLINK
2354
+ # },
2355
+ # ],
2356
+ # },
2357
+ # })
2358
+ #
2359
+ # @example Response structure
2360
+ #
2361
+ # resp.commit_id #=> String
2362
+ # resp.tree_id #=> String
2363
+ #
2364
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/MergeBranchesBySquash AWS API Documentation
2365
+ #
2366
+ # @overload merge_branches_by_squash(params = {})
2367
+ # @param [Hash] params ({})
2368
+ def merge_branches_by_squash(params = {}, options = {})
2369
+ req = build_request(:merge_branches_by_squash, params)
2370
+ req.send_request(options)
2371
+ end
2372
+
2373
+ # Merges two specified branches using the three-way merge strategy.
2374
+ #
2375
+ # @option params [required, String] :repository_name
2376
+ # The name of the repository where you want to merge two branches.
2377
+ #
2378
+ # @option params [required, String] :source_commit_specifier
2379
+ # The branch, tag, HEAD, or other fully qualified reference used to
2380
+ # identify a commit. For example, a branch name or a full commit ID.
2381
+ #
2382
+ # @option params [required, String] :destination_commit_specifier
2383
+ # The branch, tag, HEAD, or other fully qualified reference used to
2384
+ # identify a commit. For example, a branch name or a full commit ID.
2385
+ #
2386
+ # @option params [String] :target_branch
2387
+ # The branch where the merge will be applied.
2388
+ #
2389
+ # @option params [String] :conflict_detail_level
2390
+ # The level of conflict detail to use. If unspecified, the default
2391
+ # FILE\_LEVEL is used, which will return a not mergeable result if the
2392
+ # same file has differences in both branches. If LINE\_LEVEL is
2393
+ # specified, a conflict will be considered not mergeable if the same
2394
+ # file in both branches has differences on the same line.
2395
+ #
2396
+ # @option params [String] :conflict_resolution_strategy
2397
+ # Specifies which branch to use when resolving conflicts, or whether to
2398
+ # attempt automatically merging two versions of a file. The default is
2399
+ # NONE, which requires any conflicts to be resolved manually before the
2400
+ # merge operation will be successful.
2401
+ #
2402
+ # @option params [String] :author_name
2403
+ # The name of the author who created the commit. This information will
2404
+ # be used as both the author and committer for the commit.
2405
+ #
2406
+ # @option params [String] :email
2407
+ # The email address of the person merging the branches. This information
2408
+ # will be used in the commit information for the merge.
2409
+ #
2410
+ # @option params [String] :commit_message
2411
+ # The commit message to include in the commit information for the merge.
2412
+ #
2413
+ # @option params [Boolean] :keep_empty_folders
2414
+ # If the commit contains deletions, whether to keep a folder or folder
2415
+ # structure if the changes leave the folders empty. If this is specified
2416
+ # as true, a .gitkeep file will be created for empty folders. The
2417
+ # default is false.
2418
+ #
2419
+ # @option params [Types::ConflictResolution] :conflict_resolution
2420
+ # A list of inputs to use when resolving conflicts during a merge if
2421
+ # AUTOMERGE is chosen as the conflict resolution strategy.
2422
+ #
2423
+ # @return [Types::MergeBranchesByThreeWayOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2424
+ #
2425
+ # * {Types::MergeBranchesByThreeWayOutput#commit_id #commit_id} => String
2426
+ # * {Types::MergeBranchesByThreeWayOutput#tree_id #tree_id} => String
2427
+ #
2428
+ # @example Request syntax with placeholder values
2429
+ #
2430
+ # resp = client.merge_branches_by_three_way({
2431
+ # repository_name: "RepositoryName", # required
2432
+ # source_commit_specifier: "CommitName", # required
2433
+ # destination_commit_specifier: "CommitName", # required
2434
+ # target_branch: "BranchName",
2435
+ # conflict_detail_level: "FILE_LEVEL", # accepts FILE_LEVEL, LINE_LEVEL
2436
+ # conflict_resolution_strategy: "NONE", # accepts NONE, ACCEPT_SOURCE, ACCEPT_DESTINATION, AUTOMERGE
2437
+ # author_name: "Name",
2438
+ # email: "Email",
2439
+ # commit_message: "Message",
2440
+ # keep_empty_folders: false,
2441
+ # conflict_resolution: {
2442
+ # replace_contents: [
2443
+ # {
2444
+ # file_path: "Path", # required
2445
+ # replacement_type: "KEEP_BASE", # required, accepts KEEP_BASE, KEEP_SOURCE, KEEP_DESTINATION, USE_NEW_CONTENT
2446
+ # content: "data",
2447
+ # file_mode: "EXECUTABLE", # accepts EXECUTABLE, NORMAL, SYMLINK
2448
+ # },
2449
+ # ],
2450
+ # delete_files: [
2451
+ # {
2452
+ # file_path: "Path", # required
2453
+ # },
2454
+ # ],
2455
+ # set_file_modes: [
2456
+ # {
2457
+ # file_path: "Path", # required
2458
+ # file_mode: "EXECUTABLE", # required, accepts EXECUTABLE, NORMAL, SYMLINK
2459
+ # },
2460
+ # ],
2461
+ # },
2462
+ # })
2463
+ #
2464
+ # @example Response structure
2465
+ #
2466
+ # resp.commit_id #=> String
2467
+ # resp.tree_id #=> String
2468
+ #
2469
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/MergeBranchesByThreeWay AWS API Documentation
2470
+ #
2471
+ # @overload merge_branches_by_three_way(params = {})
2472
+ # @param [Hash] params ({})
2473
+ def merge_branches_by_three_way(params = {}, options = {})
2474
+ req = build_request(:merge_branches_by_three_way, params)
2475
+ req.send_request(options)
2476
+ end
2477
+
2478
+ # Closes a pull request and attempts to merge the source commit of a
2479
+ # pull request into the specified destination branch for that pull
2480
+ # request at the specified commit using the fast-forward merge strategy.
2481
+ #
2482
+ # @option params [required, String] :pull_request_id
2483
+ # The system-generated ID of the pull request. To get this ID, use
2484
+ # ListPullRequests.
2485
+ #
2486
+ # @option params [required, String] :repository_name
2487
+ # The name of the repository where the pull request was created.
2488
+ #
2489
+ # @option params [String] :source_commit_id
2490
+ # The full commit ID of the original or updated commit in the pull
2491
+ # request source branch. Pass this value if you want an exception thrown
2492
+ # if the current commit ID of the tip of the source branch does not
2493
+ # match this commit ID.
2494
+ #
2495
+ # @return [Types::MergePullRequestByFastForwardOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2496
+ #
2497
+ # * {Types::MergePullRequestByFastForwardOutput#pull_request #pull_request} => Types::PullRequest
2498
+ #
2499
+ # @example Request syntax with placeholder values
2500
+ #
2501
+ # resp = client.merge_pull_request_by_fast_forward({
2502
+ # pull_request_id: "PullRequestId", # required
2503
+ # repository_name: "RepositoryName", # required
2504
+ # source_commit_id: "ObjectId",
2505
+ # })
2506
+ #
2507
+ # @example Response structure
2508
+ #
2509
+ # resp.pull_request.pull_request_id #=> String
2510
+ # resp.pull_request.title #=> String
2511
+ # resp.pull_request.description #=> String
2512
+ # resp.pull_request.last_activity_date #=> Time
2513
+ # resp.pull_request.creation_date #=> Time
2514
+ # resp.pull_request.pull_request_status #=> String, one of "OPEN", "CLOSED"
2515
+ # resp.pull_request.author_arn #=> String
2516
+ # resp.pull_request.pull_request_targets #=> Array
2517
+ # resp.pull_request.pull_request_targets[0].repository_name #=> String
2518
+ # resp.pull_request.pull_request_targets[0].source_reference #=> String
2519
+ # resp.pull_request.pull_request_targets[0].destination_reference #=> String
1741
2520
  # resp.pull_request.pull_request_targets[0].destination_commit #=> String
1742
2521
  # resp.pull_request.pull_request_targets[0].source_commit #=> String
1743
2522
  # resp.pull_request.pull_request_targets[0].merge_base #=> String
1744
2523
  # resp.pull_request.pull_request_targets[0].merge_metadata.is_merged #=> Boolean
1745
2524
  # resp.pull_request.pull_request_targets[0].merge_metadata.merged_by #=> String
2525
+ # resp.pull_request.pull_request_targets[0].merge_metadata.merge_commit_id #=> String
2526
+ # resp.pull_request.pull_request_targets[0].merge_metadata.merge_option #=> String, one of "FAST_FORWARD_MERGE", "SQUASH_MERGE", "THREE_WAY_MERGE"
1746
2527
  # resp.pull_request.client_request_token #=> String
1747
2528
  #
1748
2529
  # @see http://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/MergePullRequestByFastForward AWS API Documentation
@@ -1754,6 +2535,248 @@ module Aws::CodeCommit
1754
2535
  req.send_request(options)
1755
2536
  end
1756
2537
 
2538
+ # Closes a pull request and attempts to merge the source commit of a
2539
+ # pull request into the specified destination branch for that pull
2540
+ # request at the specified commit using the squash merge strategy.
2541
+ #
2542
+ # @option params [required, String] :pull_request_id
2543
+ # The system-generated ID of the pull request. To get this ID, use
2544
+ # ListPullRequests.
2545
+ #
2546
+ # @option params [required, String] :repository_name
2547
+ # The name of the repository where the pull request was created.
2548
+ #
2549
+ # @option params [String] :source_commit_id
2550
+ # The full commit ID of the original or updated commit in the pull
2551
+ # request source branch. Pass this value if you want an exception thrown
2552
+ # if the current commit ID of the tip of the source branch does not
2553
+ # match this commit ID.
2554
+ #
2555
+ # @option params [String] :conflict_detail_level
2556
+ # The level of conflict detail to use. If unspecified, the default
2557
+ # FILE\_LEVEL is used, which will return a not mergeable result if the
2558
+ # same file has differences in both branches. If LINE\_LEVEL is
2559
+ # specified, a conflict will be considered not mergeable if the same
2560
+ # file in both branches has differences on the same line.
2561
+ #
2562
+ # @option params [String] :conflict_resolution_strategy
2563
+ # Specifies which branch to use when resolving conflicts, or whether to
2564
+ # attempt automatically merging two versions of a file. The default is
2565
+ # NONE, which requires any conflicts to be resolved manually before the
2566
+ # merge operation will be successful.
2567
+ #
2568
+ # @option params [String] :commit_message
2569
+ # The commit message to include in the commit information for the merge.
2570
+ #
2571
+ # @option params [String] :author_name
2572
+ # The name of the author who created the commit. This information will
2573
+ # be used as both the author and committer for the commit.
2574
+ #
2575
+ # @option params [String] :email
2576
+ # The email address of the person merging the branches. This information
2577
+ # will be used in the commit information for the merge.
2578
+ #
2579
+ # @option params [Boolean] :keep_empty_folders
2580
+ # If the commit contains deletions, whether to keep a folder or folder
2581
+ # structure if the changes leave the folders empty. If this is specified
2582
+ # as true, a .gitkeep file will be created for empty folders. The
2583
+ # default is false.
2584
+ #
2585
+ # @option params [Types::ConflictResolution] :conflict_resolution
2586
+ # A list of inputs to use when resolving conflicts during a merge if
2587
+ # AUTOMERGE is chosen as the conflict resolution strategy.
2588
+ #
2589
+ # @return [Types::MergePullRequestBySquashOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2590
+ #
2591
+ # * {Types::MergePullRequestBySquashOutput#pull_request #pull_request} => Types::PullRequest
2592
+ #
2593
+ # @example Request syntax with placeholder values
2594
+ #
2595
+ # resp = client.merge_pull_request_by_squash({
2596
+ # pull_request_id: "PullRequestId", # required
2597
+ # repository_name: "RepositoryName", # required
2598
+ # source_commit_id: "ObjectId",
2599
+ # conflict_detail_level: "FILE_LEVEL", # accepts FILE_LEVEL, LINE_LEVEL
2600
+ # conflict_resolution_strategy: "NONE", # accepts NONE, ACCEPT_SOURCE, ACCEPT_DESTINATION, AUTOMERGE
2601
+ # commit_message: "Message",
2602
+ # author_name: "Name",
2603
+ # email: "Email",
2604
+ # keep_empty_folders: false,
2605
+ # conflict_resolution: {
2606
+ # replace_contents: [
2607
+ # {
2608
+ # file_path: "Path", # required
2609
+ # replacement_type: "KEEP_BASE", # required, accepts KEEP_BASE, KEEP_SOURCE, KEEP_DESTINATION, USE_NEW_CONTENT
2610
+ # content: "data",
2611
+ # file_mode: "EXECUTABLE", # accepts EXECUTABLE, NORMAL, SYMLINK
2612
+ # },
2613
+ # ],
2614
+ # delete_files: [
2615
+ # {
2616
+ # file_path: "Path", # required
2617
+ # },
2618
+ # ],
2619
+ # set_file_modes: [
2620
+ # {
2621
+ # file_path: "Path", # required
2622
+ # file_mode: "EXECUTABLE", # required, accepts EXECUTABLE, NORMAL, SYMLINK
2623
+ # },
2624
+ # ],
2625
+ # },
2626
+ # })
2627
+ #
2628
+ # @example Response structure
2629
+ #
2630
+ # resp.pull_request.pull_request_id #=> String
2631
+ # resp.pull_request.title #=> String
2632
+ # resp.pull_request.description #=> String
2633
+ # resp.pull_request.last_activity_date #=> Time
2634
+ # resp.pull_request.creation_date #=> Time
2635
+ # resp.pull_request.pull_request_status #=> String, one of "OPEN", "CLOSED"
2636
+ # resp.pull_request.author_arn #=> String
2637
+ # resp.pull_request.pull_request_targets #=> Array
2638
+ # resp.pull_request.pull_request_targets[0].repository_name #=> String
2639
+ # resp.pull_request.pull_request_targets[0].source_reference #=> String
2640
+ # resp.pull_request.pull_request_targets[0].destination_reference #=> String
2641
+ # resp.pull_request.pull_request_targets[0].destination_commit #=> String
2642
+ # resp.pull_request.pull_request_targets[0].source_commit #=> String
2643
+ # resp.pull_request.pull_request_targets[0].merge_base #=> String
2644
+ # resp.pull_request.pull_request_targets[0].merge_metadata.is_merged #=> Boolean
2645
+ # resp.pull_request.pull_request_targets[0].merge_metadata.merged_by #=> String
2646
+ # resp.pull_request.pull_request_targets[0].merge_metadata.merge_commit_id #=> String
2647
+ # resp.pull_request.pull_request_targets[0].merge_metadata.merge_option #=> String, one of "FAST_FORWARD_MERGE", "SQUASH_MERGE", "THREE_WAY_MERGE"
2648
+ # resp.pull_request.client_request_token #=> String
2649
+ #
2650
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/MergePullRequestBySquash AWS API Documentation
2651
+ #
2652
+ # @overload merge_pull_request_by_squash(params = {})
2653
+ # @param [Hash] params ({})
2654
+ def merge_pull_request_by_squash(params = {}, options = {})
2655
+ req = build_request(:merge_pull_request_by_squash, params)
2656
+ req.send_request(options)
2657
+ end
2658
+
2659
+ # Closes a pull request and attempts to merge the source commit of a
2660
+ # pull request into the specified destination branch for that pull
2661
+ # request at the specified commit using the three-way merge strategy.
2662
+ #
2663
+ # @option params [required, String] :pull_request_id
2664
+ # The system-generated ID of the pull request. To get this ID, use
2665
+ # ListPullRequests.
2666
+ #
2667
+ # @option params [required, String] :repository_name
2668
+ # The name of the repository where the pull request was created.
2669
+ #
2670
+ # @option params [String] :source_commit_id
2671
+ # The full commit ID of the original or updated commit in the pull
2672
+ # request source branch. Pass this value if you want an exception thrown
2673
+ # if the current commit ID of the tip of the source branch does not
2674
+ # match this commit ID.
2675
+ #
2676
+ # @option params [String] :conflict_detail_level
2677
+ # The level of conflict detail to use. If unspecified, the default
2678
+ # FILE\_LEVEL is used, which will return a not mergeable result if the
2679
+ # same file has differences in both branches. If LINE\_LEVEL is
2680
+ # specified, a conflict will be considered not mergeable if the same
2681
+ # file in both branches has differences on the same line.
2682
+ #
2683
+ # @option params [String] :conflict_resolution_strategy
2684
+ # Specifies which branch to use when resolving conflicts, or whether to
2685
+ # attempt automatically merging two versions of a file. The default is
2686
+ # NONE, which requires any conflicts to be resolved manually before the
2687
+ # merge operation will be successful.
2688
+ #
2689
+ # @option params [String] :commit_message
2690
+ # The commit message to include in the commit information for the merge.
2691
+ #
2692
+ # @option params [String] :author_name
2693
+ # The name of the author who created the commit. This information will
2694
+ # be used as both the author and committer for the commit.
2695
+ #
2696
+ # @option params [String] :email
2697
+ # The email address of the person merging the branches. This information
2698
+ # will be used in the commit information for the merge.
2699
+ #
2700
+ # @option params [Boolean] :keep_empty_folders
2701
+ # If the commit contains deletions, whether to keep a folder or folder
2702
+ # structure if the changes leave the folders empty. If this is specified
2703
+ # as true, a .gitkeep file will be created for empty folders. The
2704
+ # default is false.
2705
+ #
2706
+ # @option params [Types::ConflictResolution] :conflict_resolution
2707
+ # A list of inputs to use when resolving conflicts during a merge if
2708
+ # AUTOMERGE is chosen as the conflict resolution strategy.
2709
+ #
2710
+ # @return [Types::MergePullRequestByThreeWayOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2711
+ #
2712
+ # * {Types::MergePullRequestByThreeWayOutput#pull_request #pull_request} => Types::PullRequest
2713
+ #
2714
+ # @example Request syntax with placeholder values
2715
+ #
2716
+ # resp = client.merge_pull_request_by_three_way({
2717
+ # pull_request_id: "PullRequestId", # required
2718
+ # repository_name: "RepositoryName", # required
2719
+ # source_commit_id: "ObjectId",
2720
+ # conflict_detail_level: "FILE_LEVEL", # accepts FILE_LEVEL, LINE_LEVEL
2721
+ # conflict_resolution_strategy: "NONE", # accepts NONE, ACCEPT_SOURCE, ACCEPT_DESTINATION, AUTOMERGE
2722
+ # commit_message: "Message",
2723
+ # author_name: "Name",
2724
+ # email: "Email",
2725
+ # keep_empty_folders: false,
2726
+ # conflict_resolution: {
2727
+ # replace_contents: [
2728
+ # {
2729
+ # file_path: "Path", # required
2730
+ # replacement_type: "KEEP_BASE", # required, accepts KEEP_BASE, KEEP_SOURCE, KEEP_DESTINATION, USE_NEW_CONTENT
2731
+ # content: "data",
2732
+ # file_mode: "EXECUTABLE", # accepts EXECUTABLE, NORMAL, SYMLINK
2733
+ # },
2734
+ # ],
2735
+ # delete_files: [
2736
+ # {
2737
+ # file_path: "Path", # required
2738
+ # },
2739
+ # ],
2740
+ # set_file_modes: [
2741
+ # {
2742
+ # file_path: "Path", # required
2743
+ # file_mode: "EXECUTABLE", # required, accepts EXECUTABLE, NORMAL, SYMLINK
2744
+ # },
2745
+ # ],
2746
+ # },
2747
+ # })
2748
+ #
2749
+ # @example Response structure
2750
+ #
2751
+ # resp.pull_request.pull_request_id #=> String
2752
+ # resp.pull_request.title #=> String
2753
+ # resp.pull_request.description #=> String
2754
+ # resp.pull_request.last_activity_date #=> Time
2755
+ # resp.pull_request.creation_date #=> Time
2756
+ # resp.pull_request.pull_request_status #=> String, one of "OPEN", "CLOSED"
2757
+ # resp.pull_request.author_arn #=> String
2758
+ # resp.pull_request.pull_request_targets #=> Array
2759
+ # resp.pull_request.pull_request_targets[0].repository_name #=> String
2760
+ # resp.pull_request.pull_request_targets[0].source_reference #=> String
2761
+ # resp.pull_request.pull_request_targets[0].destination_reference #=> String
2762
+ # resp.pull_request.pull_request_targets[0].destination_commit #=> String
2763
+ # resp.pull_request.pull_request_targets[0].source_commit #=> String
2764
+ # resp.pull_request.pull_request_targets[0].merge_base #=> String
2765
+ # resp.pull_request.pull_request_targets[0].merge_metadata.is_merged #=> Boolean
2766
+ # resp.pull_request.pull_request_targets[0].merge_metadata.merged_by #=> String
2767
+ # resp.pull_request.pull_request_targets[0].merge_metadata.merge_commit_id #=> String
2768
+ # resp.pull_request.pull_request_targets[0].merge_metadata.merge_option #=> String, one of "FAST_FORWARD_MERGE", "SQUASH_MERGE", "THREE_WAY_MERGE"
2769
+ # resp.pull_request.client_request_token #=> String
2770
+ #
2771
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/MergePullRequestByThreeWay AWS API Documentation
2772
+ #
2773
+ # @overload merge_pull_request_by_three_way(params = {})
2774
+ # @param [Hash] params ({})
2775
+ def merge_pull_request_by_three_way(params = {}, options = {})
2776
+ req = build_request(:merge_pull_request_by_three_way, params)
2777
+ req.send_request(options)
2778
+ end
2779
+
1757
2780
  # Posts a comment on the comparison between two commits.
1758
2781
  #
1759
2782
  # @option params [required, String] :repository_name
@@ -2338,6 +3361,8 @@ module Aws::CodeCommit
2338
3361
  # resp.pull_request.pull_request_targets[0].merge_base #=> String
2339
3362
  # resp.pull_request.pull_request_targets[0].merge_metadata.is_merged #=> Boolean
2340
3363
  # resp.pull_request.pull_request_targets[0].merge_metadata.merged_by #=> String
3364
+ # resp.pull_request.pull_request_targets[0].merge_metadata.merge_commit_id #=> String
3365
+ # resp.pull_request.pull_request_targets[0].merge_metadata.merge_option #=> String, one of "FAST_FORWARD_MERGE", "SQUASH_MERGE", "THREE_WAY_MERGE"
2341
3366
  # resp.pull_request.client_request_token #=> String
2342
3367
  #
2343
3368
  # @see http://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/UpdatePullRequestDescription AWS API Documentation
@@ -2389,6 +3414,8 @@ module Aws::CodeCommit
2389
3414
  # resp.pull_request.pull_request_targets[0].merge_base #=> String
2390
3415
  # resp.pull_request.pull_request_targets[0].merge_metadata.is_merged #=> Boolean
2391
3416
  # resp.pull_request.pull_request_targets[0].merge_metadata.merged_by #=> String
3417
+ # resp.pull_request.pull_request_targets[0].merge_metadata.merge_commit_id #=> String
3418
+ # resp.pull_request.pull_request_targets[0].merge_metadata.merge_option #=> String, one of "FAST_FORWARD_MERGE", "SQUASH_MERGE", "THREE_WAY_MERGE"
2392
3419
  # resp.pull_request.client_request_token #=> String
2393
3420
  #
2394
3421
  # @see http://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/UpdatePullRequestStatus AWS API Documentation
@@ -2439,6 +3466,8 @@ module Aws::CodeCommit
2439
3466
  # resp.pull_request.pull_request_targets[0].merge_base #=> String
2440
3467
  # resp.pull_request.pull_request_targets[0].merge_metadata.is_merged #=> Boolean
2441
3468
  # resp.pull_request.pull_request_targets[0].merge_metadata.merged_by #=> String
3469
+ # resp.pull_request.pull_request_targets[0].merge_metadata.merge_commit_id #=> String
3470
+ # resp.pull_request.pull_request_targets[0].merge_metadata.merge_option #=> String, one of "FAST_FORWARD_MERGE", "SQUASH_MERGE", "THREE_WAY_MERGE"
2442
3471
  # resp.pull_request.client_request_token #=> String
2443
3472
  #
2444
3473
  # @see http://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/UpdatePullRequestTitle AWS API Documentation
@@ -2535,7 +3564,7 @@ module Aws::CodeCommit
2535
3564
  params: params,
2536
3565
  config: config)
2537
3566
  context[:gem_name] = 'aws-sdk-codecommit'
2538
- context[:gem_version] = '1.21.0'
3567
+ context[:gem_version] = '1.22.0'
2539
3568
  Seahorse::Client::Request.new(handlers, context)
2540
3569
  end
2541
3570