diff --git "a/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/image-1.png" "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/image-1.png" new file mode 100644 index 0000000000000000000000000000000000000000..ac8a8cfc0e3a26a97487b13f56d08f2f7014fc44 Binary files /dev/null and "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/image-1.png" differ diff --git "a/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/image-2.png" "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/image-2.png" new file mode 100644 index 0000000000000000000000000000000000000000..c55b475ffcbf162972664f5594b41f0093262d5a Binary files /dev/null and "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/image-2.png" differ diff --git "a/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/image.png" "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/image.png" new file mode 100644 index 0000000000000000000000000000000000000000..998eb8a0f0e5bc169c8be517fe12d3598c20428a Binary files /dev/null and "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/image.png" differ diff --git "a/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-1.png" "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-1.png" new file mode 100644 index 0000000000000000000000000000000000000000..62375829930cc15f1774ee819a6f0d53f569ffa1 Binary files /dev/null and "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-1.png" differ diff --git "a/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-2.png" "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-2.png" new file mode 100644 index 0000000000000000000000000000000000000000..b50ff51875d554b3f331ba4f7e6b3dd7b7f73b58 Binary files /dev/null and "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-2.png" differ diff --git "a/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-3.png" "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-3.png" new file mode 100644 index 0000000000000000000000000000000000000000..7af6d75b85448bce6e0cab02f7253c831ae7a294 Binary files /dev/null and "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-3.png" differ diff --git "a/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-4.png" "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-4.png" new file mode 100644 index 0000000000000000000000000000000000000000..9b27e95e1838471205b07c8d5a3afd92fd4b6b2f Binary files /dev/null and "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-4.png" differ diff --git "a/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-5.png" "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-5.png" new file mode 100644 index 0000000000000000000000000000000000000000..946eb6a5491315005f0ec61424ce3a3c7c1820a9 Binary files /dev/null and "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-5.png" differ diff --git "a/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-6.png" "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-6.png" new file mode 100644 index 0000000000000000000000000000000000000000..df94508e5f9f9341927dd37040200a2f0227c243 Binary files /dev/null and "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-6.png" differ diff --git "a/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-7.png" "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-7.png" new file mode 100644 index 0000000000000000000000000000000000000000..260add892072ae35362abfada21c2e3f59407bbe Binary files /dev/null and "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-7.png" differ diff --git "a/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-8.png" "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-8.png" new file mode 100644 index 0000000000000000000000000000000000000000..a01e8dd2f7f8a98f1ef919372067490b4bb615a4 Binary files /dev/null and "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-8.png" differ diff --git "a/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-9.png" "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-9.png" new file mode 100644 index 0000000000000000000000000000000000000000..66a1cc44384e09c2bd4d1489ecb96c3168cbe98e Binary files /dev/null and "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image-9.png" differ diff --git "a/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image.png" "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image.png" new file mode 100644 index 0000000000000000000000000000000000000000..ea49ac874b7c446767ccbedb852c6211a371f711 Binary files /dev/null and "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/images/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200/image.png" differ diff --git "a/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200.md" "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200.md" new file mode 100644 index 0000000000000000000000000000000000000000..62f11e3c795513a45a8d8d94e52a76cfc3376148 --- /dev/null +++ "b/2025/\347\254\2542\347\273\204(RA8D1-Vision-Board)/\345\255\231\346\265\251\345\261\277/\347\254\224\350\256\260/\343\200\220RSOC25\343\200\221Day1 \345\255\246\344\271\240\347\254\224\350\256\260\357\274\232RT-Thread\345\274\200\345\217\221\347\216\257\345\242\203\346\220\255\345\273\272\344\270\216Git\345\237\272\347\241\200.md" @@ -0,0 +1,203 @@ +# 【RSOC25】Day1 学习笔记:RT-Thread开发环境搭建与Git基础 + +--- + +## 一、环境准备核心工具 + +### 1. 必备工具安装 + +#### Git +- **功能**:版本控制工具,用于拉取代码仓库 +- **下载地址**:https://git-scm.com/downloads +- **安装说明**:选择对应系统版本(Windows建议x64),默认安装即可,安装后可通过"Git Bash"启动命令行 + +![Git安装界面](images/%E3%80%90RSOC25%E3%80%91Day1%20%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0%EF%BC%9ART-Thread%E5%BC%80%E5%8F%91%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BA%E4%B8%8EGit%E5%9F%BA%E7%A1%80/image.png) + +#### VS Code +- **功能**:代码编辑器,用于代码编写与Git可视化管理 +- **下载地址**:https://code.visualstudio.com/ +- **安装说明**:安装时勾选"添加到右键菜单",方便直接通过右键打开文件夹 + +![VS Code安装界面](images/%E3%80%90RSOC25%E3%80%91Day1%20%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0%EF%BC%9ART-Thread%E5%BC%80%E5%8F%91%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BA%E4%B8%8EGit%E5%9F%BA%E7%A1%80/image-1.png) +#### ENV工具 +- **功能**:RT-Thread专用构建工具,用于配置工程、管理软件包 +- **安装说明**:需通过Git拉取仓库(见下文),无需单独安装安装包 + +--- + + +## 二、RT-Thread代码与工具拉取 + +### 1. 拉取RT-Thread源码 + +#### 步骤说明 +1. **新建工作目录**:在本地(如D盘)创建`2025-RSOC`文件夹,用于存放所有相关文件 +2. **启动Git Bash**:进入`2025-RSOC`文件夹,右键选择"Git Bash Here"打开终端 +3. **克隆代码仓库**: + +![Git Bash操作界面](images/%E3%80%90RSOC25%E3%80%91Day1%20%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0%EF%BC%9ART-Thread%E5%BC%80%E5%8F%91%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BA%E4%B8%8EGit%E5%9F%BA%E7%A1%80/image-2.png) + +**推荐方式(国内网络,速度更快)**: +```bash +git clone https://gitee.com/mirrors_RT-Thread/rt-thread.git +``` + +**备选方式(GitHub)**: +```bash +git clone https://github.com/RT-Thread/rt-thread.git +``` + +> 拉取完成后,`rt-thread`文件夹中会包含完整源码。 +![RT-Thread源码目录结构](images/【RSOC25】Day1%20学习笔记:RT-Thread开发环境搭建与Git基础/image-3.png) + +### 2. 拉取ENV工具(构建工具) + +#### 步骤说明 +1. **新建ENV目录**:在`2025-RSOC`下创建`env-tools`文件夹 +2. **拉取ENV仓库**:使用Gitee镜像,需带子模块(`--recursive`) + +```bash +git clone --recursive https://gitee.com/mirrors_RT-Thread/env-windows.git env-tools +``` + +> 拉取完成后,`env-tools`中会有`env.bat`等文件。 + +--- +![ENV工具目录结构](images/【RSOC25】Day1%20学习笔记:RT-Thread开发环境搭建与Git基础/image-4.png) + +## 三、环境配置与代码编译 + +### 1. ENV工具配置 + +#### 初始化ENV +1. 进入`env-tools`文件夹 +2. 双击`env.bat` +3. 首次运行会自动安装依赖(等待进度完成) +![ENV初始化界面](images/【RSOC25】Day1%20学习笔记:RT-Thread开发环境搭建与Git基础/image-5.png) + +#### 注册右键菜单 +1. 打开ENV终端后,按`Win+Alt+P`打开设置 +2. 进入`Integration`选项 +3. 点击`Register` +4. 完成后右键任意文件夹会显示"ConEmu Here"(快速启动ENV) +![ENV设置界面](images/【RSOC25】Day1%20学习笔记:RT-Thread开发环境搭建与Git基础/image-6.png) +![右键菜单注册完成](images/【RSOC25】Day1%20学习笔记:RT-Thread开发环境搭建与Git基础/image-7.png) + +### 2. 编译RT-Thread(以QEMU模拟器为例) + +#### 操作步骤 +1. **进入BSP目录**:打开`rt-thread/bsp/qemu-vexpress-a9`文件夹,右键选择"ConEmu Here"启动ENV +2. **配置工程**:输入`menuconfig`,首次打开直接按`Q`退出并保存(生成默认配置) +![menuconfig配置界面](images/【RSOC25】Day1%20学习笔记:RT-Thread开发环境搭建与Git基础/image-8.png) + +3. **编译代码**:输入`scons -j4`(`-j4`表示用4线程加速,根据电脑性能调整),编译完成后会生成`.elf`文件 +4. **运行程序**:输入`qemu-nographic.bat`,终端会显示RT-Thread启动日志,出现`msh>`表示运行成功 +![QEMU运行RT-Thread](images/【RSOC25】Day1%20学习笔记:RT-Thread开发环境搭建与Git基础/image-9.png) + +### 3. 新增文件/目录的构建配置 + +如果新增代码文件(如`test`目录下的`test.c`),需创建`SConscript`脚本指定编译规则。 + +**示例脚本**: +```python +from building import * +src = Glob('*.c') # 包含当前目录所有.c文件 +group = DefineGroup('test', src, depend = [''], lib = ['']) +Return('group') +``` + +保存后重新编译(`scons -j4`),新文件会被纳入构建。 + +--- + + +## 四、Git版本控制基础 + +### 1. 本地仓库操作 + +#### 基本流程 +1. **初始化仓库**:新建文件夹后,在Git Bash中输入`git init`,生成隐藏的`.git`目录 +2. **文件管理流程**: + +**查看状态**: +```bash +git status # 查看文件状态(未跟踪文件标红) +``` +![alt text](image.png) +**添加文件**: +```bash +git add . # 将所有修改文件加入暂存区(标绿) +``` + +**提交更改**: +```bash +git commit -m "备注信息" # 提交到本地仓库 +``` + +**查看历史**: +```bash +git log # 查看提交历史 +``` + +> **注意**:首次提交需配置用户信息: +> ```bash +> git config --global user.name "用户名" +> git config --global user.email "邮箱" +> ``` + +### 2. 分支与远程协作 + +#### 分支操作 +```bash +git branch 分支名 # 创建分支(如 git branch day1-notes) +git checkout 分支名 # 切换分支(如 git checkout day1-notes) +git checkout -b 分支名 # 创建并切换分支 +``` + +#### 远程提交流程 +1. **Fork官方仓库**到个人Gitee账号(如`https://gitee.com/jiuxiaoyw/rsoc-rtt`) +![alt text](image-2.png) +2. **克隆个人仓库**到本地: + ```bash + git clone 你的仓库地址 + ``` +![alt text](image-1.png) +3. **提交修改**到本地分支后,推送到个人远程: + ```bash + git push origin 分支名 + ``` + +4. **发起PR**:在Gitee网页发起`Pull Request`(PR),将个人分支合并到官方仓库 + +--- + + +## 五、常用命令速查表 + +### Git命令 +| 命令 | 说明 | +|------|------| +| `git init` | 初始化本地仓库 | +| `git clone 仓库地址` | 克隆远程仓库 | +| `git status` | 查看文件状态 | +| `git add .` | 暂存所有修改 | +| `git commit -m "备注"` | 提交到本地仓库 | +| `git branch -a` | 查看所有分支 | +| `git checkout -b 分支名` | 创建并切换分支 | +| `git push origin 分支名` | 推送本地分支到远程 | +| `git reset --hard HEAD~` | 硬重置(删除最近一次提交) | + +### RT-Thread编译命令 +| 命令 | 说明 | +|------|------| +| `menuconfig` | 配置工程 | +| `scons -j4` | 多线程编译 | +| `pkgs --update` | 更新软件包 | + +--- + +## 六、参考资料 + +- **RT-Thread官方文档**:https://www.rt-thread.org/document/site/ +- **Git基础教程**:https://git-scm.com/book/zh/v2 +- **VS Code Git插件**:推荐安装"Git Graph"(可视化分支历史) \ No newline at end of file