git 初始化
git init
添加文件
git add <file>
添加注释
git commit -m "注释"
重新提交覆盖上一次提交内容
git commit --amend
查看当前所处状态
git status
克隆仓库
git clone <remoteURL>
关联远程仓库
git remote add <remote> <remoteURL>
查看git对应的远程仓库地址
git remote -v
第一次提交到远程
git push -u <remote> <branch>
查看修改了什么内容
git diff <file>
查看日志只展示最近5条
git log --oneline -5
查看历史操作日志
git reflog
首先查看一下有哪些文件将被删除
git clean -nxdf
确定将被删除的文件无误后,执行删除
git clean -xdf
也可以一个一个文件的删除
git clean -f <file>
查看分支
git branch -vva
创建分支
git branch <branch>
删除分支
git branch -d <branch> (-D是强制删除分支)
拉取所有分支
git fetch --all
暂存到堆栈区
git stash
查看stash内容
git stash list
查看stash某个内容
git stash show <showid>
用到本地修改时,把stash内容应用到本地分支上(会弹出)
git stash pop
不想弹出内容,但仍然把stash内容应用到本地分支上(不会弹出)
git stash apply
删除指定的一次stash内容
git stash drop <showid>
删除所有stash内容
git stash clear
回滚(工作区(删除)、暂存区(删除)、本地仓库(回滚))
git reset --hard HEAD
回退到上一个版本
git reset --hard HEAD^
还原到指定commit id指定的版本,id 不需要全写,工作目录里的内容会被完全重置为和HEAD的新位置相同的内容
git reset --hard <commit id>
强制拉代码覆盖本地文件
git reset --hard <remote>/<branch>
撤销上一次修改
git reset --soft HEAD^
可以把暂存区的修改撤销掉(unstage),重新放回工作区
git reset HEAD <file>
三种模式都会撤销commit的提交,也就是本地仓库会回滚
soft 工作区(保留)、暂存区(保留)、本地仓库(回滚)
mixed 工作区(保留)、并将暂存区退回到工作区(不是删除,只是需要重新add)、本地仓库(回滚)所以也叫混合模式
hard 工作区(删除)、暂存区(删除)、本地仓库(回滚)
表示将在工作空间但是不在暂存区的文件撤销更改.
git restore <file>
将暂存区的文件从暂存区撤出,但不会更改文件。
git restore --staged <file>
拉代码
git pull <remote> <branch>
恢复文件
git checkout -- <file>
恢复最新的提交的状态
git checkout HEAD -- <file>
创建+切换分支
git checkout -b <branch>
删除文件
git rm <file>
把某分支的某次提交合并到应用的分支上,只需在应用的分支上
git cherry-pick <某分支提交的commit-id> (这里id可以写多个)
取消本次的cherry-pick操作
git cherry-pick --abort