简单唠叨几句哈。之前工作的时候,由于是在大厂,代码提交、版本管理都是多人协作的,所以公司当时用的git + gerrit来实现代码管理的。当时入职时并不懂git的使用,虽然有大神写好配置git的文档,我们也就是照葫芦画瓢而已,懵懵懂懂的。。。由于工作的变动,到小公司后不再使用git,之前学的那些也早已忘到脑后了,时隔多年,想想还是得把git给捡起来,毕竟接触过的技术不能丢哈。哈哈,跑题了哈,下面言归正传。

git远程连接GitHub有四种传输协议:

l 本地协议(local)

l git协议

l HTTPS

l SSH

由于现在大多数都是远程操作及多人共享,本地协议(local)就有些局限了,因此不常用。而git协议缺乏授权机制,并且搭建也比较困难,因此也不常用。

常用的也就是HTTPS和SSH这两中协议了,这种协议的传输速度都挺快,HTTPS适合开源的项目,SSH协议更适合企业内部项目。具体的我就不多啰嗦了,有兴趣的朋友可以看一下这个详细介绍

本篇介绍下通过HTTPS协议连接GitHub仓库;

本篇使用Android项目 + Mac来完成操作(Windows系统也差不多一样)。

一、注册GitHub账号(有的话可以忽略此步)

登录GitHub官网,点击右上角 sign up,接下来按提示完成就好。

二、在GitHub上创建一个项目

登录后点击右上角 + 号,点击New Repository,见下图:

三、安装git(已经安装过的可以忽略此步)

1、安装git

Mac:

git --version

Linus:

sudo dnf install git-all

Ubuntu:

sudo apt install git-all

Windows:命令行下载比较麻烦,还得下载依赖库,去官网下载安装即可

2、配置git

git config --global user.name “your namen”
git config --global user.email “your email”

四、创建本地git仓库

创建git本地仓库有两种形式(根据自己的需要,选其一中实现即可):

1、通过git init方式创建

在项目的文件夹下运行git init,这样就会在项目的文件夹下创建.git文件,例如 MyProject是我的项目文件夹,在终端输入:

cd Users/user/MyProject
git init

2、通过git clone方式创建

git clone 是把GitHub上的仓库给拉取下来,说白点就是复制GitHub的仓库粘贴到本 地电脑上,远程的仓库克隆到本地后也就是在本地创建了一个文件夹,同时文件夹内会 自动创建好.git文件。在终端输入:

git clone https://github.com/zhangsan/android-project/MyProjiect.git

注意上面的链接最好复制GitHub仓库中的,这样不容易出错,详见下图:

最后再把自己的项目复制到MyProject里就行了。

五、提交代码

完成以上的操作后,本地的git仓库就已经创建好了,接下来就可以看到代码状态和提 交代码了,终端输入以下命令:

git status
git add *
git commit -m "first commit"

六、连接远程GitHub仓库

1、创建GitHub令牌

登录GitHub -- 点击 + 号 -- Settings --  Developer Settings -- Personal access tokens

进入后点击右上角生成令牌按钮,弹出页面后按照要求创建就好。

切记要选择令牌的权限,否则最后push的时候会报错,提示没有权限访问。

2、关联远程GitHub仓库

git remote set-url origin https://github.com/zhangsan/android-project/MyProject.git

然后我们可以查看下设置情况

git show remote origin

3、上传代码到GitHub仓库

git push origin master

注意:push的过程中会让输入账号和密码,账号就是你注册GitHub的用户名(用户名区分大小写),密码就是你刚刚生成的令牌。

到此就完事了!!!

新手一次就全部操作成功了?

接着往下看↓↓↓遇到的坑

1、git push的时候提示fatal: unable to access 'https://github.com/EdenLiyan/android-project/MyProject.git/': LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to github.com:443

答:这个问题是提示连接到GitHub时候http请求出错了,因为GitHub是国外网站,本身国内访问就很慢,通过终端操作同样也会出现此问题。解决方案就是重新再push一下就好了

2、git push的时候提示remote: Repository not found. fatal: repository 'https://github.com/android-project/MyProject.git/' not found

答:这个问题的原因有很多,也可以看下官方回答。我是开始在GitHub上创建仓库是设置的是private,后来又改成public就好了。也可以参考下StackOverflow上的回答

3、git push的时候提示remote: Permission to EdenLiyan/HealthData.git denied to EdenLiyan. fatal: unable to access 'https://github.com/android-project/MyProject.git/': The requested URL returned error: 403

答:这个问题就是设置令牌的时候没有勾选权限导致的,可以看下本文中介绍的第六项第1条。

至此,差不多全部OK了,可能你在操作的过程中还会遇到其他或更多的问题,欢迎留言,我们一起讨论!

转载请注明出处!谢谢!

git连接远程GitHub仓库详细总结 for HTTPS协议的更多相关文章

  1. Git关联远程GitHub仓库

    一.本地安装GIT版本控制软件 二.配置Git,设置用户信息 git config --global user.name "jack" git config --global us ...

  2. 本地git连接远程github

    git要连接GitHub仓库,是通过SSH加密连接的,所以必须要创建SSH key ssh-key -t rsa -C "youremail@example.com" 这里邮箱必须 ...

  3. 将本地文件git到远程github仓库

    使用git管理项目是开发人员必备的技能,下面就介绍如何使用git将本地文件管理并且同步到github上面. 小白可以参考 创建SSH-key并且在github中添加认证 在本地用户的.ssh文件下面生 ...

  4. Git 添加远程github仓库的时候提示错误:fatal: remote origin already exists.

    1.先删除远程 Git 仓库 $ git remote rm origin 2.再添加远程 Git 仓库 $ git remote add origin git@github.com:wsydxian ...

  5. 本地git关联远程github

    0. 前言 我们开发的项目,均在本地开发:为了保证项目进度的一致性和公开性等,我们通常将开发过程代码或成品放置到github中,本文就讲述如何使得本地git与远程github同步! PS:以下两个名称 ...

  6. git连接远程仓库

    1. 连接远程仓库 1.1. 创建仓库 在连接远程仓库之前,得先要确定你有一个远程仓库,到GitHub官网搞一个账户. 点右上角的加号然后"New repository"输入一个仓 ...

  7. git 现在本地创建仓库 再 推送到 远程 github 仓库中

    今天,需要再本地使用git管理代码,但是当代码创建好的时候,想发布到github上面的私有仓库中,但是没有提前创建远端仓库,所以需要把本地git仓库推送到远端另外一个仓库了,下面进行简要记录,刚刚经过 ...

  8. git连接远程仓库时,出现“ Repository not found"的解决办法

    2018-08-25 今天连接远程仓库时,出现: 原来是远程仓库地址名字错了. 解决方法: 1.找到.git目录 2.进入.git找到config文件 3.修改config里面的远程地址url

  9. 【转】PhpStorm 提交代码到远程GitHub仓库

    转载地址:http://my.oschina.net/lujianing/blog/180728 1.下载github for window http://windows.github.com/ 2. ...

随机推荐

  1. filebeat 提取获取massage字段 利用pipeline grok 7.12

    嘴巴会说(情商)比技术有时候更重要! 水平有限,希望你看完有所收获! 背景 1,filebeat直连Elasticsearch,需要对massage提取一些特定的字段. 2,如果你对数据需要处理的比较 ...

  2. Docker:docker部署PXC-5.7.21(mysql5.7.21)集群搭建负载均衡实现双机热部署方案

    单节点数据库弊端 大型互联网程序用户群体庞大,所以架构必须要特殊设计 单节点的数据库无法满足性能上的要求 单节点的数据库没有冗余设计,无法满足高可用 推荐Mysql集群部署方案 PXC (Percon ...

  3. 资源:jenkins下载路径

    Jenkins版本下载路径 所有版本:http://mirrors.jenkins.io/war/

  4. 微信小程序支付 后台处理逻辑 (转)

    <?phpnamespace app\parent\controller; use think\Request; class Wxpay{    function wechat(){ //微信配 ...

  5. [Vue入门及介绍,基础使用、MVVM架构、插值表达式、文本指令、事件指令]

    [Vue入门及介绍,基础使用.MVVM架构.插值表达式.文本指令.事件指令] 1)定义:javascript渐进式框架 ​ 渐进式:可以控制一个页面的一个标签,也可以控制一系列标签,也可以控制整个页面 ...

  6. mysql学习--MySQL存储引擎对比总结

    一.存储引擎是什么 存储引擎是数据库的核心,对于mysql来说,存储引擎是以插件的形式运行的.MySQL默认配置了许多不同的存储引擎,可以预先设置或者在MySQL服务器中启用.你可以选择适用于服务器. ...

  7. Adaptive AUTOSAR 学习笔记 3 - AP 背景、技术及特征(中文翻译)

    本系列学习笔记基于 AUTOSAR Adaptive Platform 官方文档 R20-11 版本.本文从AUTOSAR_EXP_PlatformDesign.pdf开始,一边学习,一边顺带着翻译一 ...

  8. 『与善仁』Appium基础 — 1、Android系统的测试环境搭建

    目录 1.Android操作系统简介 (1)Android系统诞生 (2)Android系统的结构 (3)Android测试环境搭建整体思路 2.Java环境安装 (1)JDK8下载 (2)安装JDK ...

  9. [001] - JavaSE面试题(一):面向对象

    第一期:Java面试 - 100题,梳理各大网站优秀面试题.大家可以跟着我一起来刷刷Java理论知识 [001] - JavaSE面试题(一):面向对象 第1问:面向对象和面向过程的区别? 面向过程 ...

  10. python的setup.py文件及其常用命令

    编写setup.py文件,获取帮助:python setup.py --help-commands [python]  Standard commands:    build             ...