git命令大全:

https://github.com/xjh22222228/git-manual

检索 命令 含义 备注
init
初始化
git init 初始化一个本地仓库
clone
克隆
git clone SSH地址 创建远程仓库后用git bash 克隆下来
add
添加
git add XX文件 就是把工作区的代码放到暂存区 本次存放XX文件
git add . 把工作区的所有代码放到暂存区
commit
提交
git commit -m ‘备注’ 提交一次版本,到本地仓库 -m和备注信息每次都填上,不然会弹窗让你填表写。
config
配置
git config —list 查询当前配置信息列表 在当前项目下查看的是全局配置+当前项目的配置
status
状态
git status 查看当前文件的状态 untracked、staged、modified、committed
log
日志
git log 查看提交的版本记录(详细信息)
git log xx.文件 查看某个文件的日志
reflog
信息
git reflog 检索版本(简化版)当前仓库的历史信息、历史版本 head指向当前版本
checkout
撤销
git checkout — xx.文件 撤销xx文件的上一步操作(花式撤销)
git checkout 切换分支
git checkout -b 创建并切换分支
push
推送远程
git push 推送本地仓储库到远程(下同)
git push 例子:git push origin master
origin:原项目地址
master:分支名
origin
远端仓库的别名,其真正的地址可以通过git remote获取
git push origin dev:dev 例子,当前dev分支推送到远程dev分支
remote
原项目地址
git remote -v 查看远程仓库。获取原项目地址,可以改名。 得到“地址名:地址”的形式
git remote add
reset
回退
git reset —mixed HEAD~1 —mixed是默认,可以不写。
回到暂存区
—mixed表示只回退部分,包括HEAD,index。
git reset —soft HEAD~1 只回退到HEAD
回到工作区
git reset —hard HEAD 版本回滚到当前HEAD指向的版本
—hard表示回滚版本的三区一致(强制版本)
git reset —hard HEAD^ HEAD后边填一个尖角号,向前回滚一个版本,2个^就回滚两个版本。类推
git reset —hard HEAD~num num表示回滚的对应版本个数
git reset —hard 版本号 回滚到对应版本 版本号如下边图片中ceb1746
注意,回退完了以后,远程没改,只是 本地改了。所以还需要git push -f 强制改远程
diff
比较
git diff 差异比较,找出几次代码的不同
如果为空就是相同的。
diff算法就是找不同。
git diff HEAD 比较工作区与本地版本库中最近一次commit的内容
git diff —cached 比较暂存区与本地版本库中最近一次commit的内容
git diff 比较两个commit之间的差异
branch
分支
git branch 查看分支 分支:多人开发,协作和管理
平行时空、并行开发
git branch 创建分支 name表示分支名
git branch —set-upstream-to=origin/master master 将远端master分支和本地master 分支建立联系 image.png
上述错时用
git checkout 切换分支
git checkout -b 创建并切换分支
git branch -d 删除本地分支
git push -d 删除远程分支
推送本地分支到远程
合并
merge
git merge 要合并的分支 在master分支下输入这个命令,则将dev分支合并到master分支上。
fetch git fetch 从远程分支上拉取代码,直接与本地仓库合并,有冲突需要手动改
pull
拉取
git pull origin master 从原项目地址的master分支上拉取代码,直接与本地仓库合并,有冲突需要手动改 git pull = git fetch + git merge
来自 [https://www.cnblogs.com/runnerjack/p/9342362.html](https://www.cnblogs.com/runnerjack/p/9342362.html)
git pull origin master —allow-unrelated-histories 本地仓库和远程仓库是独立的两个仓库。在pull命令后紧接着使用—allow-unrelated-history选项来解决问题(该选项可以合并两个独立启动仓库的历史) 出现下列错误时使用:
fatal: refusing to merge unrelated histories
(拒绝合并不相关的历史)
help
帮助
git help
git —help
展示git命令大纲及常用命令
git help -a 展示git命令大纲及全部命令列表
git help 展示具体命令说明手册
其他奇技
stash列表 git stash save -a “messeag” 添加改动到stash
git stash list 查看stash列表
gitstash pop stash@{id} 恢复改动
删除
stash
git stash drop stash@{id} 删除暂存
git stash clear 删除全部暂存


image.png

删除远端分支和本地分支

删除远程分支:git push origin —delete dev20181018
删除本地分支: git branch -d dev20181018
把当前分支强制提交到远程:$ git push -f origin currentBranch