美文网首页
git连接远程GitHub仓库详细总结 for HTTPS协议

git连接远程GitHub仓库详细总结 for HTTPS协议

作者: Java架构大仙 | 来源:发表于2021-08-17 20:13 被阅读0次

    简单唠叨几句哈。之前工作的时候,由于是在大厂,代码提交、版本管理都是多人协作的,所以公司当时用的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条。

    如果本文对你有所帮助,欢迎点赞转发,也欢迎大家说说自己在学习的时候自己的一些心得,方便大家一起学习共同成长!关注【Java架构-大仙】阅读更多技术干货文章。

    相关文章

      网友评论

          本文标题:git连接远程GitHub仓库详细总结 for HTTPS协议

          本文链接:https://www.haomeiwen.com/subject/friibltx.html