Git 常用命令及其使用场景
Git 是分布式版本控制系统,以下是常用命令及其典型使用场景:
1. 基础操作命令
命令 | 描述 | 使用场景 |
---|
git init | 初始化一个新的 Git 仓库 | 新建项目并开始使用 Git 进行版本控制时。 |
git clone <repo_url> | 克隆远程仓库到本地 | 获取已有的 Git 仓库到本地进行开发。 |
git status | 查看当前工作区状态 | 检查是否有修改、添加或删除文件的操作未提交。 |
git log | 查看提交历史 | 查看项目的历史变更记录或追踪特定的提交。 |
git diff | 查看文件更改 | 比较工作区与暂存区之间的差异,检查修改内容。 |
2. 分支管理命令
命令 | 描述 | 使用场景 |
---|
git branch | 列出分支或创建新分支 | 创建新功能分支或查看当前分支状态。 |
git checkout <branch> | 切换到指定分支 | 在不同功能分支之间切换开发环境。 |
git checkout -b <branch> | 创建并切换到新分支 | 在新功能开发前快速创建分支并切换到该分支。 |
git merge <branch> | 合并指定分支到当前分支 | 完成某一功能开发后将其合并到主分支或开发分支。 |
git rebase <branch> | 将当前分支的提交应用到指定分支的最新提交上 | 清理历史提交记录,创建更整洁的提交历史。 |
3. 提交操作命令
命令 | 描述 | 使用场景 |
---|
git add <file> | 将文件添加到暂存区 | 准备提交修改的文件到仓库。 |
git commit -m <msg> | 提交暂存区的文件并添加提交说明 | 将本次修改记录为一次提交,并添加描述。 |
git commit --amend | 修改最后一次提交 | 修正提交说明或增加遗漏的文件到上一次提交中。 |
4. 远程操作命令
命令 | 描述 | 使用场景 |
---|
git remote add <name> <url> | 添加远程仓库 | 配置项目关联的远程仓库,如 GitHub 或 GitLab。 |
git fetch <remote> | 获取远程仓库的最新信息 | 同步远程分支的信息到本地,不影响工作区。 |
git pull <remote> <branch> | 拉取远程分支的最新代码 | 将远程仓库的更新合并到本地分支,保持同步。 |
git push <remote> <branch> | 推送本地分支到远程仓库 | 上传本地的改动到远程仓库,完成协作提交。 |
5. 恢复和撤销操作命令
命令 | 描述 | 使用场景 |
---|
git reset <file> | 取消文件的暂存状态 | 将已暂存的文件撤回到工作区。 |
git checkout -- <file> | 撤销工作区文件的修改 | 放弃未暂存的改动,还原为上一次提交的状态。 |
git revert <commit> | 反转指定提交 | 撤销某次提交的改动,同时保留历史记录。 |
git stash | 保存当前工作区状态 | 临时保存当前工作内容,便于切换分支或进行其他操作。 |
git stash pop | 恢复最近一次保存的工作区状态 | 继续之前中断的开发任务。 |
6. 标签管理命令
命令 | 描述 | 使用场景 |
---|
git tag <tag> | 创建标签 | 标记特定的提交点(如版本发布)。 |
git show <tag> | 查看标签信息 | 查看某个标签对应的提交记录。 |
git push <remote> <tag> | 推送标签到远程仓库 | 将本地创建的标签发布到远程仓库中。 |
案例分析
案例 1:多人协作开发
- 拉取代码:
git pull origin main
- 创建功能分支:
git checkout -b feature-login
- 开发与提交:
- 添加文件:
git add .
- 提交代码:
git commit -m "Add login feature"
- 推送到远程:
git push origin feature-login
- 合并分支: 提交合并请求,代码审查通过后
git merge feature-login
。
案例 2:修复线上紧急问题
- 创建热修复分支:
git checkout -b hotfix-issue123 main
- 修复代码并提交:
- 添加文件:
git add .
- 提交修改:
git commit -m "Fix critical issue #123"
- 推送到远程:
git push origin hotfix-issue123
- 发布修复版本: 创建标签
git tag v1.0.1
并推送。
通过合理使用 Git 的命令和策略,可以高效管理代码版本,提升团队协作效率。