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
相关推荐
一颗小行星!1 小时前
快速理解 Git submodule
git
A-Jie-Y3 小时前
Git基础-核心概念与常用命令
git
夜珀4 小时前
Git基础修炼手册:在AtomGit上玩转版本控制
git
golang学习记4 小时前
Zed IDE官宣新招:Git Graph 正式支持!
ide·git
要记得喝水4 小时前
适用于 Git Bash 的脚本,批量提交和推送多个仓库的修改
git·elasticsearch·bash
AI_Claude_code5 小时前
专栏导论:开源项目贡献的价值与Git工作流全景图
git·开源
never forget shyang5 小时前
CCS20.2.0使用教程
c语言·git·单片机
lifewange14 小时前
常用的Git命令有哪些?
git
无限进步_14 小时前
【C++】电话号码的字母组合:从有限处理到通用解法
开发语言·c++·ide·windows·git·github·visual studio
C++ 老炮儿的技术栈15 小时前
GCC编译时无法向/tmp 目录写入临时汇编文件,因为设备空间不足,解决
linux·运维·开发语言·汇编·c++·git·qt