git 常用命令

config

csharp 复制代码
git config --global user.name "name"
git config --global user.email "email"
# 查看
git config --global --list

init

csharp 复制代码
git init

clone

bash 复制代码
git clone <repository-url>

add

csharp 复制代码
git add <file-name>
# 添加所有更改文件
git add .

commit

sql 复制代码
git commit -m "message"
# 合并
git rebase -i
git merge --squash

stash

perl 复制代码
git stash -m "message"
# 查看
git stash list
# 应用
git stash apply
# 应用并删除最新一个
git stash pop
# 删除最新一个
git stash drop
# 删除指定暂存的记录  
$ git stash drop <stash@{0}>
# 清空
git stash clear

查看

bash 复制代码
# 状态
git status
# 日志
git log
git show

branch

perl 复制代码
# 创建
git branch <branch-name>
# 切换
git checkout <branch-name>
# 创建并切换
git checkout -b <branch-name>
# 删除,-D 强制删除
git branch -d <branch-name>
# 删除远端
git push origin --delete <branch-name>

合并分支

命令 合并后的历史记录分支 解决冲突 是否产生新 commit
git merge 保留两条并行的线 会自动解决一些冲突
git rebase 变基 合并为一条线,更整洁 需要自己处理所有冲突

rebase 建议用于对自己 commit 的操作,避免修改别人的记录

相关命令

sql 复制代码
# merge 合并到当前分支
git merge <source-branch>
# 合并冲突时,可以执行这个命令放弃本次 merge
git merge --abort
# 合并 commit,后续还有复杂的操作
git merge --squash

# rebase 将当前分支的所有提交移动到另一个分支的顶部
git rebase <target-branch>
# 解决冲突并继续变基
git add <resolved-file>
git rebase --continue
# 跳过当前冲突的提交并继续变基
git rebase --skip
# 中断或取消变基
git rebase --abort
# 合并 commit,后续还有复杂的操作
git rebase -i

将特定的提交应用到当前分支

python 复制代码
git cherry-pick <commit-hash>

添加远程仓库

csharp 复制代码
git remote add origin <repository-url>

拉代码

bash 复制代码
# 不自动合并
git fetch
# 自动合并
git pull

push

perl 复制代码
git push
# 强制推送到远端,可能会覆盖或删除一些 commit
git push -f
# 推送本地分支到远程仓库并绑定
git push --set-upstream origin <your-local-branch>
git push -u origin <your-local-branch>

回滚

python 复制代码
# 删除已有的 commit
git reset --soft <commit-hash>
git reset --hard <commit-hash>
# 保留已有的 commit
git revert <commit-hash>

从本地仓库中删除所有不再被任何远程跟踪分支引用的远程跟踪分支

sql 复制代码
git fetch --prune origin
相关推荐
Selicens1 天前
git批量删除本地多余分支
前端·git·后端
闲云一鹤2 天前
Git LFS 扫盲教程 - 你不会还在用 Git 管理大文件吧?
前端·git·前端工程化
vibecoding日记5 天前
为什么我就想要「线性历史 + Signed Commits」,GitHub 却把我当猴耍 🤬🎙️
git·编程工具
程序员小崔日记5 天前
如何将代码轻松上传到 Gitee?Git 使用全攻略!
git·gitee·上传
Bigger6 天前
为什么你的 Git 提交需要签名?—— Git Commit Signing 完全指南
git·开源·github
DianSan_ERP7 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
红豆子不相思7 天前
Tomcat 环境搭建与集群实战
服务器·git·tomcat
杰哥技术分享7 天前
Git 仓库迁移技术文档:从 CODING.net 迁移至腾讯云 CNB
git
梅孔立7 天前
Ansible 100 台服务器一键管控实战 进阶版
服务器·git·ansible