什么是 Git?
Git 是一个 分布式版本控制系统(DVCS),用于跟踪文件的变化,协调多人协作开发。由 Linus Torvalds 开发,用于管理 Linux 内核代码。
Git 的核心概念
名称 | 说明 |
---|
工作区 (Working Directory) | 你看到的项目目录。你在这里新增、编辑、删除文件。 |
暂存区 (Staging Area / Index) | 暂时保存将要提交的修改(git add 的作用)。 |
本地仓库 (Local Repository) | Git 数据库,保存提交历史(执行 git commit 存入)。 |
远程仓库 (Remote Repository) | 如 GitHub/GitLab/Codeup 上的共享仓库。 |

Git 文件的四种状态
Untracked → Staged → Committed↑ ↓Modified (Reset)
- Untracked:新文件,未被 Git 管理。
- Modified:已修改但未添加到暂存区。
- Staged:使用
git add
添加后进入。 - Committed:用
git commit
记录后存入仓库历史。
Git 安装与配置
安装
- Windows: Git for Windows
- macOS:
brew install git
- Linux:
sudo apt install git
全局配置
git config --global user.name "Your Name"
git config --global user.email "you@example.com"
git config --global core.editor "code"
常用 Git 命令(分类整理)
1. 仓库管理
git init
git clone <url>
2. 文件操作
git status
git add <file|.>
git commit -m "描述"
git rm <file>
git mv <old> <new>
3. 查看历史
git log
git log --oneline
git show <commit>
git diff
git diff --cached
4. 分支管理
git branch
git branch <name>
git checkout <name>
git checkout -b <name>
git merge <branch>
git branch -d <name>
5. 远程操作
git remote add origin <url>
git fetch
git pull origin <branch>
git push origin <branch>
git push -u origin <branch>
6. 回退与重置
git checkout -- <file>
git reset HEAD <file>
git reset --soft HEAD~1
git reset --hard HEAD~1
7. 标签管理
git tag v1.0
git tag -a v1.0 -m "发布版本"
git show v1.0
git push origin v1.0
Git 工作流示例(推荐流程)
示例:多人协作开发流程
- 克隆项目:
git clone https://github.com/user/project.git
cd project
- 创建分支开发:
git checkout -b feature/login
- 编辑代码,提交:
git add .
git commit -m "feat: 完成登录功能"
- 合并分支:
git checkout main
git pull
git merge feature/login
git push
- 清理:
git branch -d feature/login
.gitignore
文件
.gitignore
用于告诉 Git 忽略哪些文件:
# 忽略编译文件
*.o
*.exe
build/# 忽略日志
*.log# 忽略 IDE 文件
.vscode/
.idea/
高级命令与技巧
功能 | 命令 |
---|
临时保存修改 | git stash / git stash pop |
查看某行修改历史 | git blame filename |
图形化查看历史 | gitk / git log --graph |
切换到旧版本 | git checkout <commit> |
撤销提交但保留文件 | git reset --soft HEAD~1 |
Git 别名 | git config --global alias.co checkout 等 |
Git 图形工具推荐
工具名 | 说明 |
---|
GitHub Desktop | 适合新手 |
Sourcetree | 免费强大,功能全面 |
TortoiseGit | Windows 上右键菜单支持 |
GitKraken | 界面漂亮,专业团队使用 |
VS Code Git 插件 | 编辑器直接操作 Git |
Git 练习网站推荐
- https://learngitbranching.js.org
- https://git-school.github.io/visualizing-git
小结
类型 | 命令 |
---|
初始化/克隆 | git init , git clone |
暂存/提交 | git add , git commit |
查看状态 | git status , git log |
分支管理 | git branch , git checkout , git merge |
远程操作 | git push , git pull , git remote |
撤销/回退 | git reset , git checkout , git stash |