设置全局提交用户名
git config --global user.name "Zhang San"覆盖配置、提交、分支、远程协作、撤销回滚与历史排查的高频命令,含改写公共历史的注意事项。
设置全局提交用户名
git config --global user.name "Zhang San"设置全局提交邮箱,需与托管平台一致
git config --global user.email "dev@example.com"初始化仓库并指定主分支为 main
git init -b main为常用日志命令配置别名 lg
git config --global alias.lg "log --oneline --graph --decorate"以精简格式查看当前分支与改动
git status -sb交互式挑选代码块加入暂存区
git add -p提交暂存区内容并填写规范信息
git commit -m "feat: add login page"把新改动并入上一次提交且不改信息
git commit --amend --no-edit提交已推送后再改写,需要 force push,团队分支慎用
创建并切换到新分支
git switch -c feat/login切换到已有的主分支
git switch main列出本地分支及上游跟踪关系
git branch -vv删除已合并的本地分支,-D 强制删除
git branch -d feat/login浅克隆,只拉取最近一次提交
git clone --depth 1 https://github.com/user/repo.git拉取所有远程更新并清理已删分支
git fetch --all --prune以变基方式拉取,保持提交历史线性
git pull --rebase origin main推送新分支并设置上游跟踪
git push -u origin <BRANCH>强推覆盖远端分支,可能冲掉他人提交
git push --force-with-lease origin <BRANCH>--force-with-lease 在远端有新人提交时直接拒绝,比 --force 安全
丢弃工作区未提交改动,无法恢复
git restore src/App.vue把文件移出暂存区,保留工作区改动
git restore --staged src/App.vue撤销最近一次提交,改动留在暂存区
git reset --soft HEAD~1回退到上一提交,丢弃暂存区与工作区改动
git reset --hard HEAD~1已推送到公共分支时改用 git revert,避免改写历史
生成一次反向提交,安全撤销已推送内容
git revert <COMMIT>把指定提交移植到当前分支
git cherry-pick <COMMIT>暂存当前改动并加备注,便于切分支
git stash push -m "wip: login"恢复用 git stash pop,查看列表用 git stash list
图形化查看所有分支的提交历史
git log --oneline --graph --all --decorate查看指定行范围的最后修改人与提交
git blame -L 20,40 src/App.vue搜索引入或删除了某字符串的提交
git log -S "TODO" --oneline二分查找引入缺陷的提交
git bisect start
git bisect bad
git bisect good v1.0.0定位完成后执行 git bisect reset 回到原分支
查看 HEAD 移动记录,误 reset 后可找回
git reflog -n 20列出匹配模式的标签
git tag -l "v1.*"创建带说明的附注标签
git tag -a v1.2.0 -m "release 1.2.0"推送单个标签,普通 push 不会带标签
git push origin v1.2.0删除远端标签,依赖它的发布流程会失败
git push origin --delete v1.2.0本地同步删除用 git tag -d v1.2.0
本网站使用 Cookie 以确保您在我们的网站上获得最佳体验。 隐私政策.