git错误
1 | -error: RPC failed; curl 18 transfer closed with outstanding read data remaining的解决方法 |
仓库由于太大,会出西安clone失败 把 clone https 改成clone ssh 地址
ssh 的配置
1 | $ git config --global user.name "superGG1990" |
[注意:(引号内请输入你自己设置的名字,和你自己的邮箱)]此用户名和邮箱是git提交代码时用来显示你身份和联系方式的,并不是github用户名和邮箱
生成公钥
去 .ssh/ 查看自己的公钥,然后在你的自己仓库添加你公钥
1 | $ cat ~/.ssh/id_rsa.pub |
参考链接(https://www.tuicool.com/articles/BzUrAvF)
git命令
1.其它
git init:初始化本地库
git status:查看工作区、暂存区的状态
git add
git rm –cached
git commit
tip:需要再编辑提交日志,比较麻烦,建议用下面带参数的提交方法
git commit -m “提交日志”
2.日志
git log:查看历史提交
tip:空格向下翻页,b向上翻页,q退出
git log –pretty=oneline:以漂亮的一行显示,包含全部哈希索引值
git log –oneline:以简洁的一行显示,包含简洁哈希索引值
git reflog:以简洁的一行显示,包含简洁哈希索引值,同时显示移动到某个历史版本所需的步数
3.版本控制
git reset –hard 简洁/完整哈希索引值:回到指定哈希值所对应的版本
git reset –hard HEAD:强制工作区、暂存区、本地库为当前HEAD指针所在的版本
git reset –hard HEAD^:后退一个版本
tip:一个^表示回退一个版本
git reset –hard HEAD~1:后退一个版本
tip:波浪线~后面的数字表示后退几个版本
4.比较差异
git diff:比较工作区和暂存区的所有文件差异
git diff
git diff HEAD|HEAD^|HEAD~|哈希索引值
5.分支操作
git branch -v:查看所有分支
git branch -d <分支名>:删除本地分支
git branch <分支名>:新建分支
git checkout <分支名>:切换分支
git merge <被合并分支名>:合并分支
tip:如master分支合并 hot_fix分支,那么当前必须处于master分支上,然后执行 git merge hot_fix 命令
tip2:合并出现冲突
①删除git自动标记符号,如<<<<<<< HEAD、>>>>>>>等
②修改到满意后,保存退出
③git add
④git commit -m “日志信息”,此时后面不要带文件名
git基于某个分支创建分支
1.git checkout -b 新分支名 老分支名
git checkout -b dev_20150909 master
git ls -tree 分支名字
二、本地库跟远程库交互:
git clone <远程库地址>:克隆远程库
功能:①完整的克隆远程库为本地库,②为本地库新建origin别名,③初始化本地库
git remote -v:查看远程库地址别名
git remote add <别名> <远程库地址>:新建远程库地址别名
git remote rm <别名>:删除本地中远程库别名
git push <别名> <分支名>:本地库某个分支推送到远程库,分支必须指定
git pull <别名> <分支名>:把远程库的修改拉取到本地
tip:该命令包括git fetch,git merge
git fetch <远程库别名> <远程库分支名>:抓取远程库的指定分支到本地,但没有合并
git merge <远程库别名/远程库分支名>:将抓取下来的远程的分支,跟当前所在分支进行合并
git fork:复制远程库
tip:一般是外面团队的开发人员fork本团队项目,然后进行开发,之后外面团队发起pull request,然后本团队进行审核,如无问题本团队进行merge(合并)到团队自己的远程库,整个流程就是本团队跟外面团队的协同开发流程,Linux的团队开发成员即为这种工作方式。
- 本文作者: Littleki
- 本文链接: https:/littleki.gitee.io/2020/05/09/git相关/
- 版权声明: 本博客所有文章除特别声明外,均采用 MIT 许可协议。转载请注明出处!