|
|
@@ -615,7 +615,61 @@ public class Demo07 {
|
|
|
}
|
|
|
```
|
|
|
|
|
|
----
|
|
|
+### Demo08.java — Git 版本控制入门
|
|
|
+
|
|
|
+```java
|
|
|
+/**
|
|
|
+ * @author WanJl
|
|
|
+ * @version 1.0
|
|
|
+ * @title Demo08
|
|
|
+ * @description git 下载、安装及使用
|
|
|
+ * @create 2026/7/13
|
|
|
+ */
|
|
|
+public class Demo08 {
|
|
|
+ /*
|
|
|
+ Git: 代码版本控制工具
|
|
|
+ 是现在互联网公司进行软件开发时最常用的一种多人协作开发工具,
|
|
|
+ 可以帮助管理软件项目。
|
|
|
+
|
|
|
+ 比如:公司有3个开发小组,每个小组有5个人。
|
|
|
+ 共同开发一个项目。15个人写代码都是不同的代码。
|
|
|
+ 完成后,需要各个小组的组长进行审核,完成再给项目经理审核以及合并到一个项目中。
|
|
|
+
|
|
|
+ 下载:https://git-scm.com/install/windows
|
|
|
+
|
|
|
+ 公司会搭建自己的仓库(代码托管平台:GitHub、Gitee、GitLab、Gogs)
|
|
|
+
|
|
|
+ 协作流程:
|
|
|
+ 1. 新员工从公司的代码托管平台克隆(clone)需要开发的项目
|
|
|
+ 2. 员工A开始写自己的代码,员工B也开始写自己的代码
|
|
|
+ 3. 员工A写完后,先去仓库中拉取最新的代码,如果没有冲突,
|
|
|
+ 就添加到自己的本地仓库并合并
|
|
|
+ 4. 员工A提交代码到远程仓库
|
|
|
+ 5. 员工B写完后,发现远程仓库的代码领先了自己的代码,
|
|
|
+ 就需要拉取最新代码并合并,如果发现冲突(如A和B改了同一个文件),
|
|
|
+ 就需要判断和取舍——是合并到一起,还是舍弃谁的代码。
|
|
|
+ 完成操作后,再把代码提交并推送到远程仓库
|
|
|
+
|
|
|
+ 好处:
|
|
|
+ 1. 方便多人协作编写同一个项目
|
|
|
+ 2. 如果不小心删除了文件,或者写完发现有错误,
|
|
|
+ 可以一键恢复到最初版
|
|
|
+
|
|
|
+ 安装:一路 next
|
|
|
+
|
|
|
+ 配置用户名和邮箱:
|
|
|
+ git config --global user.name "你的名字"
|
|
|
+ git config --global user.email "你的邮箱@example.com"
|
|
|
+
|
|
|
+ 配置换行符处理(Windows 推荐):
|
|
|
+ git config --global core.autocrlf true
|
|
|
+
|
|
|
+ 查看配置:
|
|
|
+ git config user.name
|
|
|
+ git config user.email
|
|
|
+ */
|
|
|
+}
|
|
|
+```
|
|
|
|
|
|
## 九、随堂练习要点
|
|
|
|
|
|
@@ -638,6 +692,8 @@ public class Demo07 {
|
|
|
17. 区分**编码**(字符→二进制)与**解码**(二进制→字符),了解常见字符集(ASCII、GBK、Unicode、UTF-8)
|
|
|
18. 了解 `var` 类型推断(JDK 10+):编译时语法糖,不影响运行性能,只能在局部变量使用
|
|
|
19. Java 仍然是**强类型语言**,`var` 只是让编译器替你写类型,类型约束依然存在
|
|
|
+20. 理解 Git 的**多人协作流程**:clone → 开发 → pull → 合并 → commit → push
|
|
|
+21. 掌握 Git 初始配置:`git config --global user.name` 和 `user.email`
|
|
|
|
|
|
---
|
|
|
|
|
|
@@ -648,3 +704,72 @@ public class Demo07 {
|
|
|
| 关键字(Keyword) | Java 预留的具有特殊含义的单词(如 `public`、`class`、`static`、`void`、`int`) |
|
|
|
| 保留字(Reserved Word) | 暂未使用但预留的单词(如 `goto`、`const`) |
|
|
|
| 标识符(Identifier) | 程序员自定义的名称(类名、方法名、变量名等) |
|
|
|
+
|
|
|
+---
|
|
|
+
|
|
|
+## 十一、Git 版本控制入门
|
|
|
+
|
|
|
+> Git 是目前互联网公司最流行的**代码版本控制工具**,用于多人协作开发时的代码管理。
|
|
|
+
|
|
|
+### 1. 什么是 Git?
|
|
|
+
|
|
|
+Git 是一个**分布式版本控制系统**,可以记录每次代码的变更,支持多人并行开发、历史回溯、分支管理等功能。
|
|
|
+
|
|
|
+### 2. 为什么需要 Git?
|
|
|
+
|
|
|
+| 场景 | 问题 | Git 的解决方案 |
|
|
|
+|------|------|---------------|
|
|
|
+| 多人协作 | 15 人修改同一个项目,手动合并工作量巨大 | 自动合并 + 冲突标记 |
|
|
|
+| 代码误删 | 不小心删除了重要文件 | 一键回退到历史版本 |
|
|
|
+| 版本回溯 | 改完后发现错误,想回到最初版 | `git reset` / `git revert` |
|
|
|
+
|
|
|
+### 3. 常见代码托管平台
|
|
|
+
|
|
|
+| 平台 | 说明 |
|
|
|
+|------|------|
|
|
|
+| **GitHub** | 全球最大的代码托管平台(微软旗下) |
|
|
|
+| **Gitee(码云)** | 中国本土化的代码托管平台 |
|
|
|
+| **GitLab** | 支持私有部署的企业级平台 |
|
|
|
+| **Gogs** | 轻量级的自助 Git 服务 |
|
|
|
+
|
|
|
+### 4. 多人协作流程
|
|
|
+
|
|
|
+```
|
|
|
+① 员工入职 → 分配账号 → 从远程仓库 clone 项目
|
|
|
+② 员工 A 开始写代码,员工 B 也开始写代码
|
|
|
+③ 员工 A 写完 → 先 pull 拉取远程最新代码 → 合并到本地
|
|
|
+④ 若无冲突 → 员工 A commit + push 到远程仓库
|
|
|
+⑤ 员工 B 写完 → 发现远程已领先本地 → 先 pull 拉取
|
|
|
+ → 若有冲突(A 和 B 改了同一文件)→ 人工判断取舍
|
|
|
+ → 合并完成 → commit + push
|
|
|
+```
|
|
|
+
|
|
|
+### 5. Git 安装与初始配置
|
|
|
+
|
|
|
+**下载地址:** [https://git-scm.com/install/windows](https://git-scm.com/install/windows)
|
|
|
+
|
|
|
+安装一路 `Next` 即可。
|
|
|
+
|
|
|
+#### 配置用户名和邮箱(必须)
|
|
|
+
|
|
|
+```bash
|
|
|
+git config --global user.name "你的名字"
|
|
|
+git config --global user.email "你的邮箱@example.com"
|
|
|
+
|
|
|
+# 示例
|
|
|
+git config --global user.name "WanJL"
|
|
|
+git config --global user.email "506667090@qq.com"
|
|
|
+```
|
|
|
+
|
|
|
+#### 配置换行符(Windows 推荐)
|
|
|
+
|
|
|
+```bash
|
|
|
+git config --global core.autocrlf true
|
|
|
+```
|
|
|
+
|
|
|
+#### 验证配置
|
|
|
+
|
|
|
+```bash
|
|
|
+git config user.name
|
|
|
+git config user.email
|
|
|
+```
|