拉取
拉取远程所有最新代码且合并到当前分支
# 1. 同步远程master最新代码到本地 git fetch origin master
# 2. 合并master最新代码到当前分支 git merge origin/master
git add .
git commit -m "合并远程master最新代码"
git push
拉取远程A分支的最新内容到本地B分支
git pull origin A
撤销
git add 后撤销(撤销暂存,不丢任何代码)
# 撤销所有文件的add,你的代码修改完全保留,只是取消暂存
git reset HEAD
# 只撤销某个特定文件的add
git reset HEAD 你的文件名
# 比如:git reset HEAD src/order.js
commit 后撤销(已经 commit 了,还没 push 到远程)
# 【推荐】撤销commit,保留你的代码修改,还能改完重新提交 git reset --soft HEAD~1
push后回滚
git checkout test-jll #切到要回滚的分支
git log --oneline # 找到你要回滚的 commit:a1b2c3d feat: 加了xxx
git revert a1b2c3d git push
冲突
文件冲突解决(命令行版)
# 标准解决步骤 git pull origin 你的分支名 # 1. 拉远程代码,触发冲突 # 手动改完冲突文件后... git add 冲突的文件名 # 2. 告诉Git你解决完冲突了 git commit # 3. 提交合并 git push origin 你的分支名 # 4. 推送到远程 --- # 快捷批量解决(确定全留某一边的时候用) # 所有冲突全留你本地的修改,放弃远程的 git checkout . --ours git add . git commit && git push # 所有冲突全留远程的修改,放弃你本地的 git checkout . --theirs git add . git commit && git push
合并
本地分支合并到远端master
git pull origin master git add . git commit -m "合并master" git push origin 你的本地分支名:master
基础核心命令(每日必用)
|
命令 |
作用 |
适用场景 |
|---|---|---|
|
|
查看当前工作区文件修改状态(红 / 绿区分未暂存 / 已暂存) |
快速确认自己改了哪些文件 |
|
|
查看提交历史记录 |
追溯代码变更、查看历史版本 |
|
|
查看简洁版提交历史(一行一条) |
快速浏览提交记录,不看详细信息 |
|
|
同步远程仓库最新分支信息(不合并代码) |
同步远程分支、拉取新建分支、解决看不到远程分支问题 |
|
|
同步远程分支 + 清理本地已删除的远程分支缓存 |
同步远程分支,同时删除本地缓存的已失效远程分支 |
|
|
拉取当前分支远程最新代码(=git fetch + git merge) |
日常同步自己分支的最新代码 |
分支操作命令(核心高频)
| 命令 | 作用 | 适用场景 |
|---|---|---|
git branch -a |
查看所有分支(本地 + 远程缓存) | 查看本地、远程所有分支,确认目标分支是否存在 |
git switch 分支名 |
切换到指定分支(推荐用法) | 快速切换到已有分支 |
git checkout 分支名 |
切换到指定分支(老用法,兼容) | 切换分支(与 switch 作用一致,可选) |
git switch -c 新分支名 |
创建并切换到新分支 | 新建本地分支并直接切换过去 |
git checkout -b 新分支名 |
创建并切换到新分支(老用法) | 新建本地分支并切换(与 switch -c 作用一致,可选) |
git branch -d 分支名 |
删除本地指定分支 | 本地分支完成合并、不再使用时删除 |
git merge 目标分支名 |
合并目标分支到当前分支 | 合并 master / 其他分支到当前工作分支、合并分支代码 |
浙公网安备 33010602011771号