
# 获取扫描报告并修复代码
 #### 获取最近一次commit的代码安全扫描报告并完成修复
1. 在华为云码道代码智能体IDE页面左上方，单击模式切换按钮**Space**，即可从IDE模式切换到码道Agent Space模式。
2. 单击"代码开发"，切换到代码开发页签。
3. 在聊天界面的输入框下方选择"AgentTeam"，切换到**AgentTeam**模式。右侧显示当前选用的模型，您可在下拉框中切换不同大语言模型。
4. 在对话框输入如下指令，单击发送图标 ![](https://support.huaweicloud.com/bestpractice-codeartsagent/zh-cn_image_0000002649555426.png)或使用"Enter"快捷键发送。
   
   ```
   获取最近一次commit的代码安全扫描报告并完成修复
   ```
   码道代码智能体IDE将调用"CodeArts Check MCP"，返回获取的报告路径，用户可在本地查看代码检查报告；内置子智能体将继续修复代码，等待修复完成即可。
   
   
 
 #### 提交修改后的代码
1. 在华为云码道代码智能体IDE页面左上方，单击模式切换按钮**IDE**，即可从码道Agent Space模式切换到IDE模式。
2. 在终端执行如下命令，查看本地改动，确认修改的文件。 
   ```
   git status
   ```
   下述回显为本地修改点。
   ```
   On branch develop-dev
   Your branch is up to date with 'origin/develop-dev'.
   Changes not staged for commit:
     (use "git add <file>..." to update what will be committed)
     (use "git restore <file>..." to discard changes in working directory)
           modified:   src/main/java/com/huawei/codearts/controller/TreeController.java
           modified:   src/main/java/com/huawei/codearts/tree/MaxPathSum.java
           modified:   src/main/java/com/huawei/codearts/tree/MaxPathSumRunner.java
           modified:   src/main/java/com/huawei/codearts/tree/TreeNode.java
           modified:   src/test/java/com/huawei/codearts/tree/MaxPathSumTest.java
   Untracked files:
     (use "git add <file>..." to include in what will be committed)
           .agent-team/
           .arts/
   ```
   
   
3. 继续在终端执行如下命令，拉取远程分支最新代码。 
   ```
   # 拉取远程所有分支更新 
   git fetch origin 
   # 把远程develop-dev最新代码合并到本地当前分支 
   git pull origin develop-dev
   ```
   - 如果出现如下回显，表示无冲突，可继续执行[4]。
     ```
     nothing added to commit but untracked files present (use "git add" to track)
     From https://test.huawei.com/bb5f2eb7ded44e0bbc0ff4bd3d1d244c/repo-demo
      * branch            develop-dev -> FETCH_HEAD
     Already up to date.
     ```
     
   
   - 如果出现冲突，终端将提示冲突文件，您可手动打开文件修改冲突内容，修改完后执行如下命令，再继续执行[4]。
     ```
     git add . 
     git commit -m "fix: 合并远程代码冲突"
     ```
     
   
   
   
   
4. 继续在终端执行如下命令，将修改加入暂存区。
   
   ```
   git add .
   ```
   无任何回显，表示成功将修改文件都提交至暂存区。
   
   
5. 继续在终端执行如下命令本地提交代码。 
   ```
   git commit -m "fix: 修改扫描的代码问题"
   ```
   出现下述回显，表示成功提交代码。
   ```
   [develop-dev 55878b5] fix: 修改扫描的代码问题
    Committer: testuser (F) <test.com>
   Your name and email address were configured automatically based
   on your username and hostname. Please check that they are accurate.
   You can suppress this message by setting them explicitly:
       git config --global user.name "Your Name"
       git config --global user.email you@example.com
   After doing this, you may fix the identity used for this commit with:
       git commit --amend --reset-author
    9 files changed, 670 insertions(+), 24 deletions(-)
    create mode 100644 .agent-team/ses_07c6a4e4fffe71tWtQ6qZI4mD2/codefix/origin_report_4545383827873645935/index.json
    create mode 100644 .agent-team/ses_07c6a4e4fffe71tWtQ6qZI4mD2/codefix/origin_report_4545383827873645935/subReport_0.md
    create mode 100644 .agent-team/ses_07c6a4e4fffe71tWtQ6qZI4mD2/codefix/origin_report_4545383827873645935/subReport_1.md
    create mode 100644 .arts/settings.json
   ```
   
   
6. 执行如下命令，推送到远程云端develop-dev分支。 
   ```
   git push origin develop-dev
   ```
   出现下述回显，表示本地代码已完整提交到云端仓库"repo-demo"。
   ```
   Enumerating objects: 47, done.
   Counting objects: 100% (47/47), done.
   Delta compression using up to 16 threads
   Compressing objects: 100% (18/18), done.
   Writing objects: 100% (30/30), 6.25 KiB | 112.00 KiB/s, done.
   Total 30 (delta 6), reused 0 (delta 0), pack-reused 0 (from 0)
   remote: Start Git Hooks Checking                                        [PASSED]
   remote:
   remote: To create a merge request for develop-dev, visit:
   remote:   https://test.com/codehub/2112135977/newmerge?branchName=develop-dev&projectNamespace=bb5f2eb7ded44e0bbc0ff4bd3d1d244c/repo-demo
   remote:
   To https://test.com/bb5f2eb7ded44e0bbc0ff4bd3d1d244c/repo-demo.git
      e1256e8..55878b5  develop-dev -> develop-dev
   ```
   提交代码成功后，CodeArts Check将在云端自动触发检查任务。
   等待扫描结束后，可参考文档[查看代码检查结果](https://support.huaweicloud.com/bestpractice-codeartsagent/codeartsagent_bp_0016.html#codeartsagent_bp_0016__zh-cn_topic_0000002649015204_section197258166249)，查看最新检查报告，如剩余5个问题待二次修改。
   图1第二次扫描报告   
   ![](https://support.huaweicloud.com/bestpractice-codeartsagent/zh-cn_image_0000002649577314.png "点击放大")
   
   
   
 
#### 二次修改代码
1. 参考文档[获取最近一次commit的代码安全扫描报告并完成修复]，码道代码智能体IDE继续获取报告并修改代码。
2. 完成二次修改代码后，参考文档[提交修改后的代码]提交本次改动的代码。
   
   提交代码成功后，CodeArts Check将在云端自动触发检查任务。
   等待扫描结束后，可参考文档[查看代码检查结果](https://support.huaweicloud.com/bestpractice-codeartsagent/codeartsagent_bp_0016.html#codeartsagent_bp_0016__zh-cn_topic_0000002649015204_section197258166249)，查看最新检查报告，所有扫描问题均已修改。
   图2第三次扫描报告   
   ![](https://support.huaweicloud.com/bestpractice-codeartsagent/zh-cn_image_0000002679664237.png "点击放大")
   如果报告中仍有问题未修改，请继续参考文档[获取最近一次commit的代码安全扫描报告并完成修复]。
   
   
 
