git 常用分支命名
master: 主分支,用于发布稳定版本
develop: 开发分支,用于合并各个功能分支
feature: 功能分支,用于开发新功能
hotfix: 紧急修复分支,用于修复线上bug
release: 发布分支,用于发布新版本
git 常用命令
git config
git init: 初始化一个本地仓库
git config --global user.name "yourname": 设置用户名
git config --global user.email "youremail": 设置邮箱
git config --global core.editor "vim": 设置默认编辑器
git config --global color.ui true: 设置颜色
git config --list: 查看配置信息
git remote
git remote add origin: 添加远程仓库
git remote -v: 查看远程仓库信息
git remote rm origin: 删除远程仓库
git remote set-url origin xxx: 修改远程仓库地址
git remote show origin: 查看远程仓库信息
git clone
git clone xxx: 克隆远程仓库
git clone xxx yyy: 克隆远程仓库并重命名
git clone xxx --depth=1: 克隆远程仓库并只拉取最近一次提交
git branch
git branch: 查看分支
git branch -a: 查看所有分支
git branch -d xxx: 删除分支
git branch -D xxx: 强制删除分支
git branch -m old new: 重命名分支
git merge xxx: 合并分支
git rebase xxx: 变基
git log
git log: 查看提交历史
git log --oneline: 查看提交历史简洁版
git log --graph: 查看提交历史图形化
git log --pretty=oneline: 查看提交历史简洁版
git log --pretty=format:"%h - %an, %ar : %s": 查看提交历史自定义格式
git log --since=2.weeks: 查看最近两周的提交历史
git log --author=xxx: 查看某个作者的提交历史
git log --grep=xxx: 查看包含某个关键字的提交历史
git log -p: 查看提交历史的详细内容
git log -p -2: 查看最近两次提交的详细内容
git log --stat: 查看提交历史的简略统计
git log --pretty=oneline --graph --all: 查看提交历史的图形化
git log --pretty=format:"%h %s" --graph: 查看提交历史的图形化
git log --pretty=format:"%h %s" --graph --all: 查看提交历史的图形化
git log --pretty=format:"%h %s" --graph --all --decorate: 查看提交历史的图形化
git log --pretty=format:"%h %s" --graph --all --decorate --oneline: 查看提交历史的图形化
git status
git status: 查看工作区状态
git status -s: 查看工作区状态简洁版
git add
git add .: 添加所有文件
git add xxx: 添加某个文件
git add -u: 添加已经被跟踪的文件
git commit
git commit -m "message": 提交
git commit --amend: 修改最后一次提交
git commit --amend -m "message": 修改最后一次提交的message
git commit --amend --no-edit: 修改最后一次提交的内容
git commit --amend -m "message" --no-edit: 修改最后一次提交的内容和message
git reset
git reset HEAD xxx: 撤销暂存
git reset --soft HEAD^: 撤销提交
git reset --hard HEAD^: 撤销提交并删除工作区的改动
git reset --hard HEAD: 撤销提交并删除工作区的改动
git reset --hard HEAD~3: 撤销最近三次提交
git reset --hard commit_id: 撤销到某次提交
git checkout
git checkout -- xxx: 撤销工作区的改动
git checkout xxx: 切换分支
git checkout -b xxx: 创建并切换到新分支
git checkout -b xxx origin/xxx: 创建远程分支并切换到新分支
git checkout -b xxx commit_id: 创建分支并切换到某次提交
git stash
git stash: 暂存工作区
git stash list: 查看暂存列表
git stash apply: 恢复暂存
git stash drop: 删除暂存
git stash pop: 恢复并删除暂存
git fetch
git fetch: 拉取远程仓库
git fetch origin: 拉取远程仓库
git fetch origin xxx: 拉取远程仓库的某个分支
git fetch --all: 拉取所有远程仓库
git pull
git pull: 拉取远程仓库并合并
git pull origin xxx: 拉取远程仓库的某个分支并合并
git push
git push: 推送到远程仓库
git push origin xxx: 推送到远程仓库的某个分支
git push origin xxx --force: 强制推送到远程仓库的某个分支
git push origin :xxx: 删除远程仓库的某个分支
git push origin --delete xxx: 删除远程仓库的某个分支
git push origin --tags: 推送tag
git push origin --delete tag xxx: 删除远程仓库的tag
git tag
git tag: 查看tag
git tag xxx: 创建tag
git tag -a xxx -m "message": 创建带注释的tag
git tag -d xxx: 删除tag
git show xxx: 查看tag信息
git push origin xxx: 推送tag
git push origin --tags: 推送所有tag
git push origin --delete tag xxx: 删除远程仓库的tag
git diff
git diff: 查看工作区和暂存区的差异
git diff HEAD: 查看工作区和最近一次提交的差异
git diff HEAD^: 查看工作区和倒数第二次提交的差异
git diff HEAD^ HEAD: 查看最近两次提交的差异
git diff commit_id: 查看工作区和某次提交的差异
git diff commit_id1 commit_id2: 查看两次提交的差异
git diff --cached: 查看暂存区和最近一次提交的差异
git diff --stat: 查看简略统计
git diff --shortstat: 查看简略统计
git diff --name-only: 查看改动的文件
git diff --name-status: 查看改动的文件
git diff --color-words: 查看改动的内容
git diff --word-diff: 查看改动的内容
git diff --word-diff-regex=.: 查看改动的内容
git diff --word-diff-regex=[A-Za-z0-9_]: 查看改动的内容
git diff --word-diff-regex=[^[:space:]]: 查看改动的内容