Git 常用操作备忘
命令备忘
基础配置
git config --global user.name "你的名字"
git config --global user.email "你的邮箱"
日常工作流
# 查看状态
git status
# 添加文件到暂存区
git add . # 全部
git add file.py # 指定文件
# 提交
git commit -m "feat: 新功能描述"
# 拉取远程最新代码
git pull origin main
# 推送到远程
git push origin master
git push origin master:hongye # 本地 master 推到远程 hongye 分支
分支操作
# 查看分支
git branch # 本地
git branch -a # 包含远程
# 创建并切换分支
git checkout -b feature-xxx
# 切换分支
git checkout master
# 合并分支
git merge origin/main --no-edit
# 删除分支
git branch -d feature-xxx # 本地
git push origin --delete xxx # 远程
远程仓库
# 查看远程
git remote -v
# 添加远程
git remote add deploy https://git.xxx.com/repo.git
# 修改远程地址
git remote set-url origin https://新地址.git
# 拉取远程(不合并)
git fetch origin
# 查看远程分支的提交
git log --oneline origin/main -10
暂存(Stash)
# 暂存当前修改
git stash push -m "描述"
# 查看暂存列表
git stash list
# 恢复暂存
git stash pop
# 丢弃暂存
git stash drop
查看历史
# 简洁日志
git log --oneline -20
# 所有分支
git log --oneline --all -30
# 查看两个分支的差异
git diff origin/hongye..origin/main --stat
# 查看某次提交的内容
git show abc1234
撤销操作
# 撤销工作区修改(未 add)
git checkout -- file.py
# 撤销暂存(已 add 未 commit)
git reset HEAD file.py
# 撤销最近一次提交(保留修改)
git reset --soft HEAD~1
# 强制回退(丢弃修改,慎用)
git reset --hard HEAD~1
解决冲突
# 合并时遇到冲突
git merge origin/main
# 手动编辑冲突文件,然后:
git add .
git commit -m "resolve conflicts"
# 用对方版本解决
git checkout --theirs file.txt
# 用自己版本解决
git checkout --ours file.txt
提交规范(Conventional Commits)
feat: 新功能
fix: 修复 bug
refactor: 重构
docs: 文档
chore: 杂项(配置、依赖)
test: 测试
style: 格式调整
示例:
git commit -m "feat: 接入百度OCR保底识别"
git commit -m "fix: 修复压缩包多文件解压报错"
git commit -m "chore: 更新 pyproject.toml 依赖"
常见问题
push 被拒绝(protected branch)
# 推到新分支,再提 MR
git push deploy master:hongye
Everything up-to-date
# 说明没有新提交,先 commit
git add .
git commit -m "xxx"
git push
合并时本地有未提交修改
git stash
git merge origin/main
git stash pop
强制推送(覆盖远程,慎用)
git push --force origin master

浙公网安备 33010602011771号