# 1.新建存储gitstashgitstash save"save message"# 添加备注# 2.查看存储gitstash list# 3.显示做了哪些改动gitstash show# 默认show第一个存储,如果要显示其他存贮,后面加stash@{$num},如第二个 git stash show stash@{1}gitstash show-pop# 显示第一个存储的改动,如果想显示其他存存储,命令:git stash show stash@{$num} -p,如第二个:git stash show stash@{1} -p# 4.恢复某个存储(存储列表不删除)gitstash apply# 不会删除缓存堆栈中的对应stash删除,默认恢复第一个存储,即stash@{0},如果其他的则命令:git stash apply stash@{$num},比如第二个:git stash apply stash@{1}# 5.恢复某个存储(删除对应存储列表)gitstash pop# 会将缓存堆栈中的对应stash删除,默认恢复第一个存储,即stash@{0},如果其他的则命令:git stash pop stash@{$num},比如第二个:git stash pop stash@{1}# 6.丢弃某个暂存gitstash drop stash@{$num}# 如第二个:git stash drop stash@{1},从列表中删除这个存储# 7.删除全部暂存gitstashclear# 删除所有缓存的stash# 解决冲突后,添加已解决的文件gitadd<file-with-conflict>gitmerge和git rebase解决冲突的不同:gitmerge先解决冲突文件,然后使用git add,最后git commit.-i-m"....",完成。gitrebase先解决冲突文件,然后使用git add.标记解决,最后git rebase --continue,完成。gitbranch# 查看分支gitbranch develop# 创建develop分支gitcheckout –b feature/FT-123456# 创建FT-123456的一个feature分支gitcheckout develop# 切换分支gitpull origin develop#拉取develop分支gitmerge feature/FT-123456# 合并分支gitbranch –d feature/FT-123456# 删除FT-123456的feature分支gitpush –u origin hotfix/ISSUE-345678# 推送分支gitbranch-r##查看所有远程分支gitfetch--all#拉取所有远程分支到本地gitcheckout-bdev origin/dev#远程分支检出并跟踪它gitbranch-uorigin/dev dev#远程分支并跟踪它gitbranch --set-upstream-to=origin/<branch>dev git已简化成上述操作gitfetch origin 同步本地仓库和远程仓库gitpush origin--delete<branch-name>#删除远程分支撤销push的代码gitlog 获取日志信息gitlog--online#简洁显示提交历史 8位<commit-id><提交信息>gitreset--soft需要恢复到的那个版本号#保留工作区 ,清空暂存区gitpush origin 分支名称--force ,和上面语句一起使用,很危险,会将历史commit 清除掉。gitreset--mixed<commit-id>#--mixed可以不写 保留工作区 ,清空暂存区gitrevert 指定哈希值【安全撤销历史提交】,新增一条反向提交,抵消指定提交的所有改动,#git 切换本地分支到b,并关联远程分支b,远程分支没有bgitcheckout-bb#这一步等价于:git branch b + git checkout b# 推送本地分支b到远程,并建立追踪(关联)关系gitpush-uorigin b#-u(全称 --set-upstream):核心作用是把本地 b 分支和远程 origin/b 分支绑定。#执行后,远程仓库会自动创建 b 分支,且本地 b 分支会默认关联到这个远程分支。gitbranch-vv#查看本地分支与远程分支的关联关系:gitmerge--abort# 万一合崩了,立刻回滚