git学习记录

是最全写的最棒的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