基本操作命令
git clone <url> #创建版本库
git pull #拉取最新代码
git add. 添加当前目录下的所有文件到暂存区(提交代码之前要做的)
git commit -m '第一次版本提交' 提交代码
git push 将分支提交到远程分支
git branch <new-branch> # 创建新分支
git checkout <branch/tag> # 切换到指定分支或标签
git merge <branch> # 合并指定分支到当前分支
重新新建一个分支
git checkout master #却换到master分支
git pull #更新到最新代码
git checkout -b dev #创建新分支并切换到该分支
git push origin dev #推送新分支到远程仓库
git branch --set-upstream-to=origin/dev #关联远程仓库
git pull #尝试拉取验证
Git 撤销 Commit
第一种情况:还没有push,只是在本地commit
git log #查看 commitID
git reset --soft commitID #重置至指定版本,达到撤销提交的目的(即本地commit的取消)
上面的命令也可以用这个:git reset --hard commitID #源码也没了,慎用
第二种情况:已经 push 了
git log #查看 commitID
git reset --soft commitID #重置至指定版本,达到撤销提交的目的(即本地commit的取消)
git push --force
git merge 撤销 同时清除 merge 的本地文件
git reset --merge
git clean -f
修改了本地文件,重新还原
单个文件 : git checkout + 文件名
整个目录 :git checkout .(这个点要加上的)
临时切换分支,又不想提交代码
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