Git 常用指令详解:从基础到进阶

Git 常用指令详解:从基础到进阶

 

作为开发者必备的版本控制工具,Git 的核心魅力在于其强大的命令行操作。本文将通过清晰的分类和丰富的示例,带你系统掌握 Git 常用指令,搭配直观的配图帮助理解,适合新手入门和进阶复习。

 

一、基础配置:初始化与身份设置

 

1.  git init :初始化本地仓库

作用:将当前目录转换为 Git 仓库,生成隐藏的  .git  目录(存储版本控制数据)。

 

2.  git config :设置用户签名

作用:区分不同开发者身份,签名信息会包含在提交记录中。

语法:

# 项目级配置(仅当前仓库生效)

git config user.name "YourName"

git config user.email "yourmail@example.com"

 

# 系统级配置(所有仓库生效)

git config --global user.name "YourName"

git config --global user.email "yourmail@example.com"

 

说明:项目级配置优先级高于系统级,首次使用 Git 必须设置,否则无法提交代码。

 

二、本地仓库操作:文件管理三步骤

1.  git status :查看工作区状态

作用:显示文件修改状态(未跟踪、已修改、已暂存),辅助判断下一步操作。

示例输出:

On branch main

Changes not staged for commit:

  (use "git add <file>..." to update what will be committed)

  modified: README.md

no changes added to commit (use "git add" and/or "git commit -a")

 

2.  git add <file/dir> :添加文件到暂存区

作用:将工作区的修改纳入暂存区,准备提交。

语法:

git add . # 添加当前目录所有文件

git add src/index.js # 添加单个文件

git add --all # 添加所有修改(包括删除的文件)

 

3.  git commit -m "message" :提交暂存区到本地仓库

作用:将暂存区内容生成一个历史版本,附带提交说明。

语法:

git commit -m "feat: add login feature" # 标准提交信息

git commit -a -m "fix: update readme" # 自动暂存已跟踪文件并提交(不包含新文件)

说明:提交信息建议遵循 Conventional Commits 规范,便于团队协作。

 

三、分支管理:并行开发的核心

 

1. 分支操作基础

指令 说明 

 git branch  查看本地分支(当前分支带  * ) 

 git branch -a  查看所有分支(含远程分支) 

 git branch <name>  创建新分支(不切换) 

 git checkout <name>  切换到已有分支 

 git checkout -b <name>  创建并切换到新分支 

 

 

2.  git merge <branch> :合并分支

步骤:

切换到目标分支(被合并的分支,如  main ):

git checkout main

合并来源分支(如  feature/login ):

git merge feature/login

 

冲突解决:

若合并时出现冲突,编辑器会显示  <<<<<<<  和  >>>>>>>  标记冲突区域,手动修改后执行:

 

git add <冲突文件>

git commit -m "fix: resolve merge conflict"

 

3.  git branch -d <name> :删除分支

语法:

git branch -d feature/login # 安全删除(需先合并)

git branch -D feature/login # 强制删除(未合并也可删除)

 

 

四、远程仓库交互:代码同步

1.  git clone <url> :克隆远程仓库

 

作用:将远程仓库完整复制到本地,自动初始化关联。

语法:

git clone https://github.com/username/repo.git

配图建议:展示克隆后本地目录结构,以及  .git  中记录的远程仓库地址。

 

2.  git remote :管理远程仓库

指令 说明 

 git remote -v  查看远程仓库地址 

 git remote add origin <url>  添加远程仓库(名称默认  origin ) 

 git remote set-url origin <new-url>  修改远程仓库地址 

 git remote rm origin  删除远程仓库关联 

 

3.  git push :推送本地分支到远程

语法:

git push origin main # 推送 `main` 分支到远程 `origin`

git push -u origin feature # 首次推送并建立追踪关系(后续可直接 `git push`)

git push --force origin main # 强制覆盖远程分支(危险操作,慎用!)

 

4.  git pull :拉取远程更新并合并

语法:

git pull origin main # 拉取并合并 `origin/main` 到当前分支

git pull --rebase origin main # 用 Rebase 模式合并,保持线性提交历史

说明: git pull  等价于  git fetch + git merge ,先获取远程数据再合并到本地。

 

五、版本控制:回溯与修复

 

1. 查看提交历史

指令 说明 

 git log  详细日志(含哈希值、作者、时间) 

 git log --oneline  简洁单行日志 

 git reflog  查看所有分支的历史操作记录 

 

2.  git reset :回退版本

语法:

git reset HEAD^ # 回退到上一个版本(`^` 表示上一次,`~n` 表示前 n 次)

git reset --hard <commit-id> # 强制回退到指定版本(删除工作区未提交修改)

git reset --soft <commit-id> # 仅回退本地仓库,暂存区和工作区不变

 

3.  git revert <commit-id> :撤销提交

作用:生成一个新提交来撤销指定提交的修改,避免直接修改历史(适用于远程分支)。

语法:

git revert <commit-id>

 

 

六、进阶技巧:高效开发

 

1.  git stash :暂存未提交修改

 

场景:临时切换分支处理紧急任务,暂存当前未完成的修改。

语法:

 

git stash save "work in progress" # 暂存并添加备注

git stash list # 查看暂存列表

git stash pop # 恢复最近一次暂存并删除记录

 

 

2.  git cherry-pick <commit-id> :复制提交到当前分支

作用:将其他分支的某个提交应用到当前分支,精准迁移代码。

语法:

git cherry-pick abc123 # 复制哈希值为 abc123 的提交

 

 

七、常用指令速查表

功能分类 指令 说明 

初始化与配置  git init  初始化本地仓库 

  git config  设置用户签名 

本地文件管理  git status  查看状态 

  git add  添加文件到暂存区 

  git commit  提交到本地仓库 

分支管理  git branch  创建/查看分支 

  git checkout  切换分支 

  git merge  合并分支 

远程交互  git clone  克隆远程仓库 

  git push  推送分支到远程 

  git pull  拉取远程更新并合并 

版本控制  git log  查看提交历史 

  git reset  回退版本 

  git revert  撤销提交并生成新提交 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值