git是分布式,svn是集中式
配置git信息
git config --global user.email '' git config --global user.name '' git config --list
初始化git仓库
git init
git 常用命令
工作区 git add 红色 暂存区 git commit 绿色 git commit -a -m'' xxx 版本库 git push 查看版本号 git log 查看提交的版本
git diff git diff --cached 比较暂存区和版本库 git diff master 工作区和 版本库 git status 查看状态 git reset HEAD xxx 撤回git add 的内容 git checkout xxx 从暂存区覆盖工作区 git rm xxx 删除暂存区的文件(必须保证工作区没有该文件) git rm --cached xxx 只删除暂存区 工作区是保留的
- 恢复某个版本文件 git reset --hard 版本号(7位) git reflog 查看历史版本 git reset --hard HEAD^ 快速回退版本 回退一级 git reset --hard HEAD~3 快速回退版本 回退三级
git branch 查看所有分支 git branch dev 创建分支 git checkout dev 切换分支 git checkout -b dev 创建并切换分支 git branch -d dev 删除dev分支 git branch -d dev 强制删除dev分支 git merge dev 合并分支 git log --oneline --graph --all --decorate
git stash 暂存工作区的代码 git stash list 查看列表 git stash pop = git stash apply(不删除) git stash drop git rebase dev 合并分支(不产生新的版本) git cheryy-pick 版本号
(1)git stash save "save message" : 执行存储时,添加备注,方便查找,只有git stash 也要可以的,但查找时不方便识别。
(2)git stash list :查看stash了哪些存储
(3)git stash show :显示做了哪些改动,默认show第一个存储,如果要显示其他存贮,后面加stash@{$num},比如第二个 git stash show stash@{1}
(4)git stash show -p : 显示第一个存储的改动,如果想显示其他存存储,命令:git stash show stash@{$num} -p ,比如第二个:git stash show stash@{1} -p
(5)git stash apply :应用某个存储,但不会把存储从存储列表中删除,默认使用第一个存储,即stash@{0},如果要使用其他个,git stash apply stash@{$num} , 比如第二个:git stash apply stash@{1}
(6)git stash pop :命令恢复之前缓存的工作目录,将缓存堆栈中的对应stash删除,并将对应修改应用到当前的工作目录下,默认为第一个stash,即stash@{0},如果要应用并删除其他stash,命令:git stash pop stash@{$num} ,比如应用并删除第二个:git stash pop stash@{1}
(7)git stash drop stash@{num} :丢弃stash@{num}存储,从列表中删除这个存储
(8)git stash clear :删除所有缓存的stash