git的基本操作
平时使用idea进行Git操作导致git的命令不熟练,每次用到都得查一次,索性总结一次,以备后用
git add . 和git add filename 添加到暂存区
git commit -m “comments” 提交
git checkout (-b) branchname 切换【并创建】分支
git checkout . 和git checkout – filename 放弃本地临时区(未提交)修改
git reset HEAD . 和 git reset HEAD filename 放弃已经add进暂存区的修改(此时修改进入临时区,与上一条配合才能彻底放弃修改)
git pull origin 远程分支名:本地分支名 拉远程指定分支到本地分支
git push origin 本地分支名:远程分支名 推本地分支到远程分支
git rebase 在pull执行完之后执行时,放弃本分支的commit log,将远程分支的commit log加进此分区,然后根据时间关系(或者其他关系)合并暂时放弃的commit log.
git pull --rebase pull操作是将远程的分支与本分支合并,所以会产生一个很垃圾的commit log,rebase不会产生合并的commit log。
git rebase 分支名 与其他分支进行rebase【禁止在多人合作分支上进行rebase,因为会导致别人的commit log出现问题,我们pull的时候是在本地分支rebase,也就是保持远程分支的commit log】
rebase 的具体作用后面补充。
git reset --hard 版本号/HEAD^ 回退到某个提交或者上个提交,但是暂存区没有任何东西,也就是修改都不存在了
git reset --hard origin/分支名 和远程分支强行保持一致,新建分支和本地没有通信过的分支是检查不到的,所以需要git fetch --all