AWS CodeCommit 不再提供給新客戶。的現有客戶 AWS CodeCommit 可繼續正常使用此服務。了解更多」
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
檢閱提取請求
您可以使用主 AWS CodeCommit 控台來檢閱提取要求中包含的變更。您可以對請求、檔案,以及個別的程式碼行新增評論。您也可以回覆其他使用者的評論。如果您的儲存庫已設定通知,當使用者回覆您的評論或是當使用者對提取請求加上評論時,您會收到電子郵件。
您可以使用 AWS CLI 來評論提取請求並回覆註解。若要檢閱變更,您必須使用 CodeCommit 主控台、git diff指令或差異工具。
檢閱提取要求 (主控台)
您可以使用主 CodeCommit 控台來檢閱 CodeCommit 儲存庫中的提取要求。
請在以下位置開啟 CodeCommit 主控台。
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 審核者建立的建議,包括提供有關建議品質的意見反應,請選擇回覆。使用反應按鈕,提供有關您是否核准或拒絕建議的一般資訊。使用評論欄位提供有關反應的更多詳細資料。
注意
Amazon CodeGuru Reviewer 是一種自動化程式碼檢閱服務,它使用程式分析和機器學習來偵測常見問題,並建議 Java 或 Python 程式碼中的修正程式。
-
如果您已將儲存庫與 Amazon CodeGuru 審核者相關聯、分析完成,且提取請求中的程式碼為 Java 或 Python 程式碼,則只有在您將儲存庫關聯時,才會看到 Amazon CodeGuru 審核者註解。如需詳細資訊,請參閱 將 AWS CodeCommit 儲存庫與 Amazon CodeGuru 審核者建立關聯或取消關聯。
-
只有在提取請求的最 CodeGuru 新修訂版本中提出註解時,Amazon 審核者註解才會顯示在「變更」索引標籤中。它們始終顯示在「活動」標簽中。
-
雖然您可以對 Amazon CodeGuru Reviewer 建議的任何可用表情符號反應做出回應,但只有豎起大拇指和豎起大拇指表情符號反應來評估推薦的有用性。
-
-
若要核准提取請求中所做的變更,請選擇 Approve (核准)。
注意
您無法核准您自己建立的提取請求。
您可以在 Approvals (核准) 中檢視核准、提取請求的核准規則、以及由核准規則範本建立的核准規則。如果您最後決定不要核准提取請求,您可以選擇 Revoke approval (撤銷核准)。
注意
您只能核准或撤銷未結案提取請求的核准。如果提取請求的狀態為 Merged (已合併) 或 Closed (已關閉),您無法核准或撤銷核准。
檢閱提取要求 (AWS CLI)
若要搭配使用 AWS CLI 指令 CodeCommit,請安裝 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 屬性)。
-
例如,使用此命令添加註釋
「這些似乎不會在任何地方使用。我們可以刪除它們嗎?」
在一個名為的存儲庫中識別碼為47
的提取請求中對ahs_count.py
文件進行更改MyDemoRepo
。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 選項)。
例如,使用此命令添加回复
「好 catch。我會移除它們。」
與系統生成的標識的AB
CD1234 示例 B5678EFGH 的評論。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": [] } }
-