AWS CodeCommit 不再提供給新客戶。的現有客戶 AWS CodeCommit 可以繼續正常使用服務。進一步了解」
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
檢閱提取請求
您可以使用 AWS CodeCommit 主控台來檢閱提取請求中包含的變更。您可以對請求、檔案,以及個別的程式碼行新增評論。您也可以回覆其他使用者的評論。如果您的儲存庫已設定通知,當使用者回覆您的評論或是當使用者對提取請求加上評論時,您會收到電子郵件。
您可以使用 AWS CLI 來評論提取請求並回覆評論。若要檢閱變更,您必須使用 CodeCommit 主控台、 git diff命令或 diff 工具。
檢閱提取請求 (主控台)
您可以使用 CodeCommit 主控台來檢閱 CodeCommit 儲存庫中的提取請求。
開啟 CodeCommit 主控台,網址為 https://https://console.aws.amazon.com/codesuite/codecommit/home
。 -
在 Repositories (儲存庫) 中,選擇儲存庫的名稱。
-
在導覽窗格中,選擇 Pull requests (提取請求)。
-
依預設,會顯示所有開啟的提取請求清單。選擇您想要檢閱的開啟中提取請求。
注意
您可以對已關閉或合併的提取請求作評論,但無法合併或重新開啟該提取請求。
-
在提取請求中,選擇 Changes (變更)。
-
執行以下任意一項:
-
若要對整個提取請求加上一般性評論,請在 Comments on changes (對變更加上評論) 的 New comment (新增評論) 中,輸入評論,然後選擇 Save (儲存)。您可以使用 Markdown,或也可以純文字輸入您的評論。
-
若要對遞交中的檔案新增評論,請在 Changes (變更) 中找到檔案的名稱。選擇檔案名稱旁顯示的評論圖示
,輸入評論,然後選擇 Save (儲存)。
-
若要對提取請求中變更的行新增評論,在 Changes (變更) 中,移至您要加上評論的行。選擇該行顯示的評論圖示
,輸入評論,然後選擇 Save (儲存)。
-
-
若要回覆對遞交的評論,在 Changes (變更) 或 Activity (活動) 中,選擇 Reply (回覆)。您可以使用文字和表情符號來回覆 。
您可以選擇回應特定表情符號回應的人員名稱。若要檢視所有表情符號反應,以及回應表情符號者的相關資訊,請選擇檢視所有反應。如果您已使用表情符號回應註解,您的回應會顯示在表情符號反應按鈕的 圖示中。
注意
主控台中顯示的反應計數在載入頁面時是準確的。如需表情符號反應計數的最新資訊,請重新整理頁面,或選擇檢視所有反應。
-
(選用) 若要回覆 Amazon CodeGuru Reviewer 建立的建議,包括提供建議品質的意見回饋,請選擇回覆。使用反應按鈕,提供有關您是否核准或拒絕建議的一般資訊。使用評論欄位提供有關反應的更多詳細資料。
注意
Amazon CodeGuru Reviewer 是一種自動化程式碼檢閱服務,使用程式分析和機器學習來偵測常見問題,並建議修正 Java 或 Python 程式碼。
-
如果您已經將儲存庫與 Amazon CodeGuru Reviewer 建立關聯、分析完成,以及提取請求中的程式碼是 Java 或 Python 程式碼,則只會看到 Amazon CodeGuru Reviewer 註解。如需詳細資訊,請參閱將儲存 AWS CodeCommit 庫與 Amazon CodeGuru Reviewer 建立關聯或取消關聯。
-
只有在對提取請求的最近修訂版進行註解時,Amazon CodeGuru Reviewer 註解才會出現在變更索引標籤中。它們一律會出現在活動索引標籤中。
-
雖然您可以使用任何可用的表情符號回應 Amazon CodeGuru Reviewer 建議,但只會使用拇指向上和拇指向下表情符號反應來評估建議的實用性。
-
-
若要核准提取請求中所做的變更,請選擇 Approve (核准)。
注意
您無法核准您自己建立的提取請求。
您可以在 Approvals (核准) 中檢視核准、提取請求的核准規則、以及由核准規則範本建立的核准規則。如果您最後決定不要核准提取請求,您可以選擇 Revoke approval (撤銷核准)。
注意
您只能核准或撤銷未結案提取請求的核准。如果提取請求的狀態為 Merged (已合併) 或 Closed (已關閉),您無法核准或撤銷核准。
檢閱提取請求 (AWS CLI)
若要搭配 CodeCommit 使用 AWS CLI 命令,請安裝 AWS CLI。如需詳細資訊,請參閱命令列參考。
您可以使用下列 AWS CLI 命令來檢閱提取請求:
-
post-comment-for-pull-request,將註解新增至提取請求
-
get-comments-for-pull-request,檢視提取請求上留下的評論
-
update-pull-request-approval-state,核准或撤銷提取請求的核准
-
post-comment-reply,以回覆提取請求中的註解
您也可以使用具有下列命令的提取請求中註解的表情符號:
-
若要使用表情符號回覆評論,請執行 put-comment-reaction。
-
若要檢視對註解的表情符號反應,請執行 get-comment-reactions。
使用 AWS CLI 在 CodeCommit 儲存庫中檢閱提取請求
-
若要將評論新增至儲存庫中的提取請求,請執行 post-comment-for-pull-request 命令,指定:
-
提取請求的 ID (使用 --pull-request-id 選項)。
-
包含提取請求的儲存庫名稱 (使用 --repository-name 選項)。
-
將合併提取請求所在目的地分支中遞交的完整遞交 ID (使用 --before-commit-id 選項)。
-
當您張貼評論時,為提取請求分支目前頂端的來源分支中遞交的完整遞交 ID (使用 --after-commit-id 選項)。
-
唯一的用戶端產生冪等符記 (使用 --client-request-token 選項)。
-
評論的內容 (使用 --content 選項)。
-
可放置評論位置的清單位置相關資訊,包括:
-
要比較的檔案名稱,包括其副檔名和子目錄 (如果有) (使用 filePath 屬性)。
-
比較檔案中變更的行號 (使用 filePosition 屬性)。
-
對變更的評論在來源與目的地分支之間比較中為 "before" 或 "after" (使用 relativeFileVersion 屬性)。
-
例如,使用此命令來新增註解
「這些似乎不會在任何地方使用。我們是否可以移除它們?」
在名為MyDemoRepo
的儲存庫中 ID 為47
的提取請求中,ahs_count.py
檔案的變更。aws codecommit post-comment-for-pull-request --pull-request-id "
47
" --repository-nameMyDemoRepo
--before-commit-id317f8570EXAMPLE
--after-commit-id5d036259EXAMPLE
--client-request-token123Example
--content "These don't appear to be used anywhere. Can we remove them?
" --location filePath=ahs_count.py
,filePosition=367
,relativeFileVersion=AFTER如果此命令成功,則會產生類似如下的輸出:
{ "afterBlobId": "1f330709EXAMPLE", "afterCommitId": "5d036259EXAMPLE", "beforeBlobId": "80906a4cEXAMPLE", "beforeCommitId": "317f8570EXAMPLE", "comment": { "authorArn": "arn:aws:iam::111111111111:user/Saanvi_Sarkar", "clientRequestToken": "123Example", "commentId": "abcd1234EXAMPLEb5678efgh", "content": "These don't appear to be used anywhere. Can we remove them?", "creationDate": 1508369622.123, "deleted": false, "lastModifiedDate": 1508369622.123, "callerReactions": [], "reactionCounts": [] } "location": { "filePath": "ahs_count.py", "filePosition": 367, "relativeFileVersion": "AFTER" }, "repositoryName": "MyDemoRepo", "pullRequestId": "47" }
-
-
若要檢視提取請求的評論,請執行 get-comments-for-pull-request 命令,指定:
-
CodeCommit 儲存庫的名稱 (使用
--repository-name
選項)。 -
系統產生的提取請求 ID (使用
--pull-request-id
選項)。 -
(選用) 用來傳回下一個批次結果的列舉符記 (使用
--next-token
選項)。 -
(選用) 一個非負整數,用來限制傳回的結果 (使用
--max-results
選項)。
例如,使用這個命令來檢視 ID 為 42 的提取請求的評論。
aws codecommit get-comments-for-pull-request --pull-request-id 42
如果此命令成功,則會產生類似如下的輸出:
{ "commentsForPullRequestData": [ { "afterBlobId": "1f330709EXAMPLE", "afterCommitId": "5d036259EXAMPLE", "beforeBlobId": "80906a4cEXAMPLE", "beforeCommitId": "317f8570EXAMPLE", "comments": [ { "authorArn": "arn:aws:iam::111111111111:user/Saanvi_Sarkar", "clientRequestToken": "", "commentId": "abcd1234EXAMPLEb5678efgh", "content": "These don't appear to be used anywhere. Can we remove them?", "creationDate": 1508369622.123, "deleted": false, "lastModifiedDate": 1508369622.123, "callerReactions": [], "reactionCounts": { "THUMBSUP" : 6, "CONFUSED" : 1 } }, { "authorArn": "arn:aws:iam::111111111111:user/Li_Juan", "clientRequestToken": "", "commentId": "442b498bEXAMPLE5756813", "content": "Good catch. I'll remove them.", "creationDate": 1508369829.104, "deleted": false, "lastModifiedDate": 150836912.273, "callerReactions": ["THUMBSUP"] "reactionCounts": { "THUMBSUP" : 14 } } ], "location": { "filePath": "ahs_count.py", "filePosition": 367, "relativeFileVersion": "AFTER" }, "repositoryName": "MyDemoRepo", "pullRequestId": "42" } ], "nextToken": "exampleToken" }
-
-
若要核准或撤銷提取請求的核准,請執行 update-pull-request-approval-state 命令,並指定:
-
提取請求的 ID (使用 --pull-request-id 選項)。
-
提取請求的修訂 ID (使用 --revision-id option)。您可以使用 get-pull-request 命令取得提取請求的目前修訂 ID。
-
您要套用的核准狀態 (使用 --approval-state) 選項。有效的核准狀態包括
APPROVE
和REVOKE
。
例如,使用此命令來核准 ID 為
27
且修訂 ID 為9f29d167EXAMPLE
的提取請求。aws codecommit update-pull-request-approval-state --pull-request-id
27
--revision-id9f29d167EXAMPLE
--approval-state "APPROVE"若成功,此命令不會傳回任何內容。
-
-
若要對提取請求中的評論張貼回覆,請執行 post-comment-reply 命令,指定:
-
您要回覆的評論由系統產生的 ID (使用 --in-reply-to 選項)。
-
唯一的用戶端產生冪等符記 (使用 --client-request-token 選項)。
-
回覆的內容 (使用 --content 選項)。
例如,使用此命令來新增「
良好捕獲」回覆。我將移除它們。」
至系統產生的abcd1234EXAMPLEb5678efgh
ID 的註解。aws codecommit post-comment-reply --in-reply-to
abcd1234EXAMPLEb5678efgh
--content"Good catch. I'll remove them."
--client-request-token123Example
如果此命令成功,則會產生類似如下的輸出:
{ "comment": { "authorArn": "arn:aws:iam::111111111111:user/Li_Juan", "clientRequestToken": "123Example", "commentId": "442b498bEXAMPLE5756813", "content": "Good catch. I'll remove them.", "creationDate": 1508369829.136, "deleted": false, "lastModifiedDate": 150836912.221, "callerReactions": [], "reactionCounts": [] } }
-