1. Git 初始化与基本概念
1.1 Git 仓库初始化
使用 `git init` 命令在项目文件夹内创建新的 Git 仓库,生成 `.git` 文件夹来管理文件版本信息。
示例:进入项目文件夹并初始化仓库。
```bash
cd my_project
git init
```
1.2 跟踪与提交文件的基本概念
Git 的版本控制包含三个主要区域:工作区、暂存区(Stage),以及本地仓库(Repository)。
文件从工作区被添加到暂存区,再从暂存区提交到仓库进行版本管理。
2. 提交文件与目录的基本命令
2.1 添加单个文件
使用 `git add <filename>` 将指定文件添加到暂存区,准备提交到仓库。
```bash
git add example.txt
```
2.2 提交单个文件
添加文件到暂存区后,使用 `git commit` 命令将文件提交到仓库。`-m` 参数后跟提交信息,便于跟踪和协作。
```bash
git commit -m "Add example.txt with initial content"
```
2.3 添加多个文件或整个目录
使用 `git add <directory_name>` 可以递归地将目录内所有文件添加到暂存区,也可以用 `git add .` 将工作区内所有修改添加到暂存区。
```bash
git add my_folder
git add .
```
3. 分步提交目录的高级技巧
3.1 分阶段提交
使用分阶段提交的方式可以将不同类型的改动逐步加入到提交中,以保持提交记录清晰。例如:先提交一个文件,随后再提交目录中的其他文件。
```bash
git add file1.txt
git commit -m "Add initial setup for file1"
git add dir1
git commit -m "Add dir1 with related files"
```
3.2 使用 Git Status 检查文件状态
`git status` 命令可以查看哪些文件被修改、哪些文件处于暂存区,有助于在提交前检查变更内容。
```bash
git status
```
4. 回滚与撤销:确保提交准确无误
4.1 从暂存区撤回
如果文件被错误地添加到暂存区,可以使用 `git reset <file>` 将其从暂存区移回工作区。
```bash
git reset example.txt
```
4.2 撤销提交
如果发现错误的提交,可以使用 `git reset --soft HEAD~1` 回滚到上一个提交,而保留文件变更。
```bash
git reset --soft HEAD~1
```
5. 常见问题和解决方案
5.1 如何忽略不必要的文件
在项目根目录下创建 `.gitignore` 文件,指定不需追踪的文件或文件类型。
```plaintext
Ignore log files
.log
```
5.2 提交文件后发现文件未被包括
可以使用 `git commit --amend` 添加新文件到最新的提交,避免生成多次提交。
```bash
git add newfile.txt
git commit --amend --no-edit
```