Git 是一个分布式版本控制系统,广泛应用于代码的版本控制。分享一些常用的 Git 命令
# 初始化一个新的Git仓库
git init
# 克隆远程仓库到本地
git clone [url]
# 添加文件或目录到暂存区
git add [file/directory]
# 提交暂存区的更改到本地仓库,并添加提交信息
git commit -m "[message]"
# 查看当前仓库的状态
git status
# 查看提交历史
git log
# 列出本地分支
git branch
# 列出远程分支
git branch -r
# 列出所有分支(本地和远程)
git branch -a
# 切换到指定分支
git checkout [branch]
# 将指定分支的更改合并到当前分支
git merge [branch]
# 从远程仓库获取并合并到当前分支
git pull
# 将当前分支的更改推送到远程仓库
git push [remote] [branch]
# 从远程仓库获取所有分支的最新状态,但不自动合并
git fetch
# 显示远程仓库的信息
git remote -v
# 暂存当前工作目录的更改,让工作目录干净
git stash
# 恢复之前使用 git stash 暂存的更改
git stash pop
# 将HEAD重置到指定的提交
git reset [commit]
# 将HEAD重置到指定的提交,并重写工作目录和暂存区
git reset --hard [commit]
# 清除工作目录中未跟踪的文件
git clean
# 强制清除工作目录中未跟踪的文件
git clean -f
# 列出所有标签
git tag
# 创建一个新的标签
git tag [tagname]
# 创建带有信息的标签
git tag -a [tagname] -m "[message]"
# 显示特定标签或提交的信息
git show [tagname/commit]
# 比较两个分支的差异
git diff [branch1] [branch2]
# 比较暂存区和上一次提交的差异
git diff --cached
# 显示文件中每一行的最近一次提交者
git blame [file]
# 在工作目录中搜索指定的文本模式
git grep [pattern]
# 将当前分支的更改变基到指定分支的顶部
git rebase [branch]
# 交互式变基,允许编辑、压缩或重新排序提交
git rebase -i [commit]
# 应用某个特定提交的更改到当前分支
git cherry-pick [commit]
# 撤销某个特定提交的更改
git revert [commit]
# 二分查找引入错误的提交
git bisect
# 配置忽略规则,让 Git 忽略特定文件或目录
# 需要创建或编辑 .gitignore 文件
touch .gitignore
# 添加远程仓库
git remote add [name] [url]
# 重命名远程仓库
git remote rename [old_name] [new_name]
# 删除远程仓库
git remote remove [name]
# 更改远程仓库的 URL
git remote set-url [name] [new_url]
# 删除本地分支
git branch -d [branch]
# 强制删除本地分支
git branch -D [branch]
# 重命名当前分支
git branch -m [old_name] [new_name]
# 创建并切换到新分支
git checkout -b [branch]
# 基于指定的起点创建并切换到新分支
git checkout -b [branch] [start_point]
# 添加子模块到仓库
git submodule add [url] [path]
# 初始化和更新所有子模块
git submodule update --init --recursive
# 获取指定命令的帮助信息
git help [command]
# 列出所有 Git 配置
git config --list