git拉取操作
拉取项目使用git clone
git clone 项目地址
git pull操作
拉取远程分支代码时也许会出现
Your local changes to the following files would be overwritten by merge
出现的原因是远程修改的内容本地也做了修改因此无法拉取
解决方案是先让本地恢复到没有修改的状态然后拉取,拉去完之后再把本地修改加回来。
git stash //将工作区恢复到没有修改的状态,并缓存修改的内容
git pull //拉取远程代码
git stash pop //把缓存的修改内容恢复
git分支操作
1.查看分支
git branch -a
2.切换分支(切换分支的时候,如果没有该分支,则会创建。去掉-b为仅切换分支)
git checkout -b 分支名
3.将本地分支和远程分支建立联系
git branch --set-upstream-to=origin/分支名
4.删除分支
git branch -d 分支名 //删除本地分支
git push origin --delete 分支名 //删除远程分支
git的撤销操作
1.撤回提交
回到某个提交位置需要该位置的id,使用git log查看修改记录和id。
git log

image.png
git reset --soft id //这种撤回方式会撤回commot行为,不会撤回add行为。并且修改的代码不会变动。
git reset --hard id//这种撤回方式会彻底撤回,修改的代码也会恢复。
2.撤回add操作
git reset .
3.撤回到上一次提交的位置
git reset --hard HEAD^
git高级操作
如果不小心撤回到某个版本并且撤回了工作区的修改使用git log无法再看到曾经的记录了。
此时需要使用git reflog
git reflog

image.png
使用撤回命令回到误操作的位置
git reset --hard id
如果错误的push到了远程分支,需要先在本地把代码撤回原始的位置然后强制覆盖远程的提交。
强制上传本地覆盖远程
git push origin 分支名 -f