Git的结构、工作原理、基本指令
(3-P49)传统 VCS 存储 版本之间的变 化(行)
Git 存储发生变 化的文件(而 非代码行), 不变化的文件 不重复存储
即Git 管理的基本单元是文件
(3-P50)文件未发生变化,则后 续多个版本始终指向同 一个文件
文件发生变化了,存储 两份不同的文件,两个版本指向不同的文件
`git commit -m "msg"` 命令用于将修改后的文件提交至当前所在的本地仓库。它会将本地工作目录中的修改提交到当前所在的本地 Git 仓库,而不是远程仓库。
要将本地仓库的修改推送到远程仓库,需要使用 `git push` 命令。`git push` 命令将本地分支中的提交推送到远程仓库中对应的分支。
因为 git commit -m "msg"
只是将已暂存(staged)的更改提交到本地仓库,而不是将工作目录中所有修改过的文件提交到本地仓库。要提交工作目录中的修改,首先需要使用 git add
命令将修改添加到暂存区。
Git是一个分布式版本控制系统,广泛用于软件开发中的源代码管理。它能够高效地管理项目的变更历史,并支持多个开发者同时进行协作。了解Git的结构、工作原理和基本指令是使用Git的基础。
Git的结构
1. **工作区(Working Directory)**:
- 本地项目的当前状态,包括所有文件和文件夹。
2. **暂存区(Staging Area)**:
- 一个临时区域,用于保存即将提交到本地仓库的文件快照。也称为索引(Index)。
3. **本地仓库(Local Repository)**:
- 存储在本地磁盘上的代码仓库,包括所有的提交历史记录。
4. **远程仓库(Remote Repository)**:
- 存储在远程服务器上的代码仓库,多个开发者可以通过它进行协作。
Git的工作原理
1. **修改文件**:
- 在工作区中进行代码修改。
2. **暂存更改**:
- 使用 `git add` 命令将修改的文件添加到暂存区。
3. **提交更改**:
- 使用 `git commit` 命令将暂存区中的更改提交到本地仓库。
4. **推送更改**:
- 使用 `git push` 命令将本地仓库中的提交推送到远程仓库。
5. **拉取更改**:
- 使用 `git pull` 命令从远程仓库获取最新的提交并合并到本地工作区。
Git的基本指令
1. **配置用户信息**:
```bash
git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"
```
2. **初始化仓库**:
```bash
git init
```
3. **克隆远程仓库**:
```bash
git clone <repository_url>
```
4. **查看当前状态**:
```bash
git status
```
5. **添加文件到暂存区**:
```bash
git add <file_name>
git add .
```
6. **提交更改到本地仓库**:
```bash
git commit -m "Commit message"
```
7. **查看提交历史**:
```bash
git log
```
8. **推送更改到远程仓库**:
```bash
git push origin <branch_name>
```
9. **拉取远程仓库的更改并合并**:
```bash
git pull origin <branch_name>
```
10. **创建新分支**:
```bash
git branch <new_branch_name>
```
11. **切换分支**:
```bash
git checkout <branch_name>
```
12. **合并分支**:
```bash
git merge <branch_name>
```
13. **解决合并冲突**:
- 手动编辑冲突文件,解决冲突后添加到暂存区,然后提交。
```bash
git add <resolved_file>
git commit -m "Resolve merge conflict"
```
14. **删除分支**:
```bash
git branch -d <branch_name>
```
15. **查看分支**:
```bash
git branch
```
Git的核心在于它能够高效地管理项目的变更历史,并支持多个开发者同时进行协作。掌握Git的结构、工作原理和基本指令,能够让你在开发过程中更加高效和协同工作。