Git常用命令
初始全局配置
# 配置用户
git config --global user.name sobird
git config --global user.email x@sobird.me
# 配置rebase
git config --global pull.rebase false
# 文件名大小写敏感
git config --global core.ignorecase false
# 配置git push使用当前分支
git config --global push.default current
# 使用编辑器进行commit log编写
git config --global core.editor "code -w"
命令别名配置
git config --global alias.st status
git config --global alias.co checkout
git config --global alias.ci commit
git config --global alias.br branch
或者打开git的全局配置文件
git config --global -e
# 填入下面内容
[alias]
st = status
co = checkout
ci = commit
br = branch
分支相关操作
# 查看本地分支
git branch -l
# 查看所有分支
git branch -a
# 删除分支
git branch -d branchName
# 删除远程分支
git push origin -d branchName
# 同步远程已删除的分支到本地
git remote prune origin
# 快递切回上个分支
git checkout -
# 创建一个空白分支
git checkout --orphan newBranchName
git rm -rf .
# 从当前分支的某一个commit创建分支
git checkout commitId -b newBranchName
# 不同提交历史分支进行合并
git merge branchName --allow-unrelated-histories
# 将project仓库中test目录抽出为新的branch
git subtree split -P test -b test-new-br
commit相关操作
# 修改最新的commit内容或将当前的提交合并到上次历史提交
git commit --amend
# 修改用户名和邮箱
git commit --amend --author="sobird <x@sobird.me>"
# 将指定的commit应用于其他分支
git cherry-pick commitId
git reset
git reset HEAD^
# 或
git reset commitId
# --mixed reset HEAD and index 这是默认参数 等价于执行 git reset HEAD^ 不删除工作空间改动代码,撤销commit,并且撤销git add . 操作
# --soft reset only HEAD 不删除工作空间改动代码,撤销commit,不撤销git add . 操作
# --hard reset HEAD, index and working tree 删除工作空间改动代码,撤销commit,撤销git add . 完成这个操作后,就恢复到了上一次的commit状态
其他
# 保存现场
git stash
# 查看
git stash list
# 回复并删除stash
git stash pop
# 删除未跟踪的文件和目录
git clean -fd
# 删除文件(删除所有文件)
git rm -rf *
# 恢复删除的文件
git checkout HEAD *
# 导出归档文件
git archive --format=tar -o archive.tar HEAD
# 查看过往的每一次命令
git reflog