当前位置: 首页 > news >正文

github覆盖远程分支内容_Github快速上手笔记

7466408068c0fcffd822c0c4a75febab.png

小白,学习笔记

  • 注册Github账号, Github官网地址:https://github.com/
  • 本地Git安装 官网下载地址 : Git

Github远端网页上创建仓库(repository),创建之后会显示一个HTTPS/SSH地址

本地选择一个要工作的文件夹,选择这个文件夹右键(或进入这个文件夹空白处右键),点击Git Bash Here 进入本地Git窗口

  • git config配置 Git,要做的第一件事就是设置名字和邮箱地址:

(第一次使用时配置,后续不必配置) 这是用来设置你提交的时候用的信息

$ git config --global user.name 'John Doe'
$ git config --global user.email 'johndoe@example.com'
  • (非必要操作)可以选择查看本地进行的配置:
$ git config --list
  • 初始化项目,创建新的git仓库:
$ git init

在这个要工作的文件夹项目下,我们进行想要做的任何文件操作

06d113371f1488f510f1228109f45b27.png
  • 让这些文件生效,把计划改动添加到缓存区(Index):
$ git add *
  • (非必要操作)可以选择查看状态,本地发生哪些变化:
$ git status
  • 提交到HEAD,指向最后一次提交后放入结果:

'first_commit'为注释,自己想要注释的代码提交信息

$ git commit -m 'first_commit'
  • 将本地这个项目与远端Github进行关联

这一步是本地和远程服务器建立联系的一步,后面链接为创建github远端仓库之后显示的一个HTTPS

$ git remote add origin https://github.com/xxx/xxx.git
  • (最好操作一下)注意在每次提交之前要首先进行pull,这是防止冲突

如果远程主机的版本比本地版本更新,推送时Git会报错,要求先在本地做git pull合并差异,然后再推送到远程主机,这是正常合理的代码提交流程。

$ git pull origin master

如果失败,在进行git pull 时,添加一个可选项,告诉 git 允许不相关历史合并

$ git pull origin master --allow-unrelated-histories

or

$ git pull --rebase origin master 

上面这行命令做了以下内容:
a.把你 commit 到本地仓库的内容,取出来放到暂存区(stash)(这时你的工作区是干净的)
b.然后从远端拉取代码到本地,由于工作区是干净的,所以不会有冲突
c.从暂存区把你之前提交的内容取出来,跟拉下来的代码合并

所以 rebase 在拉代码前要确保你本地工作区是干净的,如果你本地修改的内容没完全 commit 或者 stash,就会 rebase 失败。

(还有一种方法 强推 本地强制上传到远程,把远程的覆盖,不推荐:

$ git push -f origin master 

Git Push -f 尽量不要使用,上面命令使用,它是将本地历史覆盖到远端仓库的行为,同事之前推送的代码会被你抹掉,他可能刚刚提交了一整个功能模块的代码。如果大家都不小心更新你的版本,OMG,前功尽弃。 除非你很确定要这样做,否则应该尽量避免使用--force选项。)

  • 最后推送到Github远端:
$ git push -u origin master

执行完成后,github上的repository就有和你本地一样的代码文件了。

($ git push origin master 命令表示,将本地的master分支推送到origin主机的master分支。如果后者不存在,则会被新建)

($ git push -u origin master 命令表示,将本地的master分支推送到origin主机,同时指定origin为默认主机,后面就可以不加任何参数使用git push了)

出现:

$ git push -u origin master
fatal: HttpRequestException encountered.
   An error occurred while sending the request.
Username for 'https://github.com': 

再输入Github账号 弹出一个框再密码就ok


进入vim界面,如何退出?

按下Esc (退出编辑状态),接着连按两次大写字母Z,就可以了

相关文章:

  • 显示某年某月日历_一眼就沦陷!一款深藏中国文化古韵的日历应用
  • 深度装机大师一键重装_深度一键重装系统软件
  • idea jsp引用路径_JSP学习4
  • 于朦胧 机器人_《两世欢》上线,于朦胧演技成笑点:像个没有感情的走路机器人...
  • 无法加载 mysql 扩展_请检查您的 php 配置. - 文档_无法加载 mysql 扩展,请检查您的 PHP 配置 最新解决办法...
  • mysql可以运行oracle报错_Oracle启动报错ORA-03113解决
  • csv导入到mysql_导入CSV到MySQL
  • mysql alter identity_mysql alter 语句用法,添加、修改、删除字段【转】
  • mysql 蘑菇查询_sql语句 基本
  • 什么是页损坏 mysql_什么导致了MySQL InnoDB损坏且如何防护?
  • 查看mysql汉字占用的字节数_一个汉字在数据库占几个字节
  • 同一个tomcat下两个项目互相调用_面试官:Tomcat是如何处理Http请求的?
  • 1080p为什么模糊 mac_1080p屏幕这么模糊,为什么1080p在笔记本端还是主流,还没被淘汰?...
  • fluentd tail mysql_使用fluentd实现实时收集日志文件
  • jsp预加载转圈_页面预加载loading动画
  • JavaScript-如何实现克隆(clone)函数
  • [deviceone开发]-do_Webview的基本示例
  • 10个确保微服务与容器安全的最佳实践
  • Date型的使用
  • Django 博客开发教程 8 - 博客文章详情页
  • Git的一些常用操作
  • HTTP中的ETag在移动客户端的应用
  • java8 Stream Pipelines 浅析
  • JavaSE小实践1:Java爬取斗图网站的所有表情包
  • Spark RDD学习: aggregate函数
  • unity如何实现一个固定宽度的orthagraphic相机
  • XML已死 ?
  • 搞机器学习要哪些技能
  • 记录:CentOS7.2配置LNMP环境记录
  • 技术:超级实用的电脑小技巧
  • 深度学习在携程攻略社区的应用
  • 深度学习中的信息论知识详解
  • 使用Swoole加速Laravel(正式环境中)
  • 学习Vue.js的五个小例子
  • 鱼骨图 - 如何绘制?
  • Spark2.4.0源码分析之WorldCount 默认shuffling并行度为200(九) ...
  • 微龛半导体获数千万Pre-A轮融资,投资方为国中创投 ...
  • ​iOS安全加固方法及实现
  • ​草莓熊python turtle绘图代码(玫瑰花版)附源代码
  • ![CDATA[ ]] 是什么东东
  • #QT(TCP网络编程-服务端)
  • ()、[]、{}、(())、[[]]命令替换
  • (AtCoder Beginner Contest 340) -- F - S = 1 -- 题解
  • (C#)一个最简单的链表类
  • (python)数据结构---字典
  • (二)七种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (提供数据集下载)基于大语言模型LangChain与ChatGLM3-6B本地知识库调优:数据集优化、参数调整、Prompt提示词优化实战
  • (译) 理解 Elixir 中的宏 Macro, 第四部分:深入化
  • (转)淘淘商城系列——使用Spring来管理Redis单机版和集群版
  • (转)项目管理杂谈-我所期望的新人
  • *1 计算机基础和操作系统基础及几大协议
  • .desktop 桌面快捷_Linux桌面环境那么多,这几款优秀的任你选
  • .net core 6 使用注解自动注入实例,无需构造注入 autowrite4net
  • .NET Core 中的路径问题
  • .Net 高效开发之不可错过的实用工具