是最全写的最棒的git知识总结了:https://www.cnblogs.com/best/p/7474442.html
补充一个git stash的详细用法:https://www.cnblogs.com/zndxall/archive/2018/09/04/9586088.html
补充本地修改后还未提交,但需要从远端pull代码的解决办法(就是stash的应用):
https://blog.csdn.net/stone_yw/article/details/80795669
https://blog.csdn.net/qq_25135655/article/details/81781185
https://blog.csdn.net/myphp2012/article/details/80519156
一个文件夹是一个git仓库
切换不同的分支会显示不同分支的内容
本地分支要和远程分支建立联系(一般同名,也可手动修改),没有建立联系的分支无法push
可添加多个主机名,注意在push和pull的时候的分支名和主机名即可,要搞清楚自己当前在哪个分支上,这个分支track的是哪个远程主机的哪个分支。
记录一下,慢慢整理
git branch
git branch -vv
git branch -b <branchname>
git checkout <branchname>
git branch -r
git branch -a
更改本地工作区代码
git checkout . 撤销所有更改
git checkout -- <filename> 撤销工作区更改
git add 将本地更改加入暂存区
git reset HEAD <filename> 撤销加入暂存区,但工作区的更改保持不变
git commit 将更改加入本地版本库
git reset --hard HEAD~ 撤销本地版本库的更改
git push 提交到线上版本库后就无法撤销操作了
git add .
git commit -m '备注'
git push origin master : master
git pull origin master : master
git fetch origin master : master
git merge master
git reset --hard HEAD^ 回退版本
git push -f origin master 回退后强制push
或者回退后保存到新分支,删掉原master分支,再创建master分支,将内容push到新的master分支上。
git checkout -b newbranch
git branch -d master
git push origin --delete master
git rebase
git cherry-pick