[GitHub]将本地文件上传远程仓库(安装,创建SSHKey,上传远程仓库)

news2024/10/6 12:24:09

目录

什么是GitHub

注册账户以及创建仓库

 安装Git

 配置Git

​编辑

将本地项目上传远程仓库 

创建本地仓库

 创建远程仓库

克隆远程仓库到本地


什么是GitHub

github是一个基于git的代码托管平台,付费用户可以建私人仓库,我们一般的免费用户只能使用公共仓库,也就是代码要公开。

注册账户以及创建仓库

要想使用github第一步当然是注册github账号了, github官网地址:https://github.com/

之后就可以创建仓库了(免费用户只能建公共仓库)

 安装Git

  • 下载 git OSX 版
  • 下载 git Windows 版
  • 下载 git Linux 版

安装步骤也可以参考廖雪峰的网站

 安装Git - 廖雪峰的官方网站

 配置Git

首先在本地创建ssh key;

找到git-bash.exe

 运行命令

$ ssh-keygen -t rsa -C "your_email@youremail.com"

后面的your_email@youremail.com改为你在github上注册的邮箱,之后会要求确认路径和输入密码,我们这使用默认的一路回车就行。

成功的话会在~/下生成.ssh文件夹,进去,打开id_rsa.pub,复制里面的key。

记事本打开也行。 

 

回到github上,进入 Account Settings(账户配置),左边选择SSH Keys,Add SSH Key,title随便填,粘贴在你电脑上生成的key。

为了验证是否成功,在git bash下输入:

$ ssh -T git@github.com

如果是第一次的会提示是否continue,输入yes就会看到:You've successfully authenticated, but GitHub does not provide shell access 。这就表示已成功连上github。

 

接下来我们要做的就是把本地仓库传到github上去,在此之前还需要设置username和email,因为github每次commit都会记录他们。

$ git config --global user.name "your name"
$ git config --global user.email "your_email@youremail.com"
 

将本地项目上传远程仓库 

创建本地仓库

接下来我们要做的就是把本地仓库传到github上去,在此之前还需要设置username和email,因为github每次commit都会记录他们。

$ git config --global user.name "your name"
$ git config --global user.email "your_email@youremail.com"
 

先将本地项目转为本地仓库

找到你的文件目录,然后右键点击Git Bash Here 进入命令行 输入 git init

创建好一个本地仓库

如下:

然后就可以看到一个git文件

本地创库就创建好了。

 创建远程仓库

在首页可以看到  Repository(仓库) 点击New

或者个人信息点击your Repository->New

 标注 1:Repository name,仓库名称;
标注 2:Description,可选描述,也就是写不写都可以;
标注 3:Public,默认的仓库类型;
标注 4:Initialize this repository with a README,初始化仓库的信息文件,建议勾选。(如果本地仓库原本不动的上传远程仓库,不要勾选,因为如果远程仓库有一个readme文件,就会与本地仓库有冲突,push就不会成功,除非你是创建远程仓库,然后克隆到本地,将其他的文件复制进克隆好的本地仓库,再缓存提交,就不会有冲突
如上图所示,这是创建 GitHub 仓库的核心页面,里面包含了众多信息。为了方便演示,博主已经把各种所需的信息都填写完啦!接下来,点击绿色Create repository按钮即可:

 如图所示,我们已经把仓库创建成功啦!仓库名为HelloWorld,包含 1 个commit,也就是我们通过勾选Initialize this repository with a README,创建了一个初始化提交文件README.md,其中文件后缀为.md,表示文件为 Markdown 格式;包含 1 个branch,为main分支,即主分支;包含 1 个contributor,为贡献者,也就是我们自己。

如果是没有勾选 初始化仓库的信息文件Initialize this repository with:

创建出的仓库是这样的,这样有利于将本地仓库上传远程仓库,因为没有readme 文件,不会有冲突

 

 可以看到我们刚刚的本地文件 分支是 master

而我们的远程仓库是主分支是main(github 以前默认是master 现在是main)  

所以我们将本地仓库的分支名称修改与远程仓库一致

使用命令

 $ git branch -m master main

 上面初始化完成后git仓库,将当前目录下的文件添加到仓库(缓冲区)

git add .

提交到本地仓库

git commit -m "init project"

把本地仓库和远程关联,并推送到远程

git remote add origin

远程仓库地址

//例如: 关联一个远程库时必须给远程库指定一个名字,origin是默认习惯命名;

git remote add origin git@server-name:path/repo-name.git

可以参考、

 然后

git branch -M main

推送到远程仓库

git push -u origin master

全部步骤:

 然后刷新就 github 就可以看到了

  执行以上操作就可以把本地新建的项目推送到 git 远程仓库了。

但在实际操作中,最后一步推送命令会报错,提示需要先  git pull 更新,而如果执行 git pull 或者 git pull origin master 都无法成功执行,会有其他的报错。

解决方案是,使用如下命令,强制推送到远程(可能会覆盖远程上已有分支、文件,使用前需要注意)

//强制推送到远程(可能会覆盖远程上已有的分支或文件)
git push -u origin master -f

注意:仅第一次需要这样执行,后续在推送代码时,git push 命令不需要再加上 -u 或者 -f 命令,使用正常推送命令就行了。

推送成功以后,就可以在本地项目中正常使用 git 命令进行更新、提交、推送等操作了。

克隆远程仓库到本地

git clone username@host:/path/to/repository

后面的地址可以再github 拿

好了,简单的github 使用就可以了,

看了好多文章,写的都不全踩了好多坑。。。。。。。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/66538.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Android 动画实现 从基础到自定义

1. 基础使用 由于是继承了ValueAnimator类 所以使用的方法十分类似:XML 设置 / Java设置1.1 Java设置 ObjectAnimator animator ObjectAnimator.ofFloat(Object object, String property, float ....values); // Object object:需要操作的对象 // Str…

【SpringCloud负载均衡】【源码+图解】【二】LoadBalancer配置

【SpringCloud负载均衡】【源码图解】【一】LoadBalancer的HelloWorld体验 目录2. LoadBalancer的配置2.1 config.LoadBalancerAutoConfiguration2.2 BlockingLoadBalancerClientAutoConfiguration2.3 LoadBalancerEurekaAutoConfiguration2.4 loadbalancer.LoadBalancerAutoCo…

[附源码]Python计算机毕业设计SSM建筑材料采购管理系统(程序+LW)

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

引擎入门 | Unity UI简介–第2部分(5)

本期我们继续为大家进行Unity UI简介(第二部分)的后续教程 本篇内容 9.设置动画对话框 文章末尾可免费获取教程源代码 本篇本篇Unity UI简介(第二部分)篇幅较长,分为八篇,本篇为第五篇。 9.设置动画对…

css:css属性pointer-events实现点击穿透

文档 https://developer.mozilla.org/zh-CN/docs/Web/CSS/pointer-events pointer-events CSS 属性指定在什么情况下 (如果有) 某个特定的图形元素可以成为鼠标事件的 target 常用属性 /* Keyword values */ pointer-events: auto; /* 与pointer-events属性未指定时的表现效…

jsp+servlet+mysql实现的学生签到考勤请假管理系统源码+教程

今天给大家演示一下由jsp servlet mysql实现的一款学生签到管理系统,系统主要分管理员、学生、辅导员、教师等角色登录,实现学生发起请假、教师辅导员审批等动作,该项目不仅源码完整,还带有完整的论文文档,数据库设计说…

Linux下普通用户(非root用户)安装Java,Java程序能编译不能运行的原因

Linux下普通用户(非root用户)安装Java1. 下载2. 解压缩3. 修改环境变量4. 验证5. 第一个Java程序1. 下载 根据自己的系统,从官网上直接下载即可。本文以jdk-8u202-linux-x64.tar.gz为例。 2. 解压缩 使用以下命令解压 tar -zxvf jdk-8u2…

【Python自然语言处理+tkinter图形化界面】实现智能医疗客服问答机器人实战(附源码、数据集、演示 超详细)

需要源码和数据集请点赞关注收藏后评论区留言私信~~~ 一、问答智能客服简介 QA问答是Question-and-Answer的缩写,根据用户提出的问题检索答案,并用用户可以理解的自然语言回答用户,问答型客服注重一问一答处理,侧重知识的推理。 …

Yolov5 中添加Network Slimming剪枝--稀疏训练部分

前言:Network Slimming剪枝过程让如下 1. 稀疏化 2. 剪枝 3. 反复迭代这个过程 一、稀疏化: 通过Network Slimming 的核心思想是:添加L1正则来约束BN层系数,从而剪掉那些贡献比较小的通道channel 原理如下:BN层的计算是这样的…

如何理解UML2.5.1(02篇)

为了避免使大家产生畏难情绪,本节先讲一个相对简单又相对普遍的问题。先看UML2.5.1中第13.2.3.5的如下内容: A Behavior shall be the method for no more than one BehavioralFeature, called its specification. 翻译过来就是: 一个行为应该…

[附源码]Python计算机毕业设计SSM家政服务系统(程序+LW)

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

2093197-94-3,DBCO-BODIPY FL,二苯并环辛炔-BODIPY FL点击化学染料环辛炔

【中文名称】氟化硼二吡咯二苯并环辛炔,二苯并环辛炔-BODIPY FL 【英文名称】 DBCO-BODIPY FL,BDP FL DBCO 【结 构 式】 【CAS号】2093197-94-3 【分子式】C32H29BF2N4O2 【分子量】550.42 【基团部分】DBCO部分 【纯度标准】95% 【包装规格】5g&#x…

【校招VIP】线上实习 推推 书籍详情模块 产品脑图周最佳

【推推】主要是为校招设计的小说一更新就通知的项目,每个模块都具有亮点和难点,项目表现为手机网站应用,可嵌入小程序或APP中。 恭喜来自 太原理工大学 的 星晚🌟 同学获得本周线上实习【推推】第一期 书籍详情模块 产品脑图设计…

kubernetes编排文件示例

kubernetes编排文件示例 编排文件生成网址:https://www.kubebiz.com/ mysql单机 需要一个配置文件,内容不会就用默认的即可 my.cnf [mysqld]pid-file /var/run/mysqld/mysqld.pid socket /var/run/mysqld/mysqld.sock datadir /var…

Python制作GUI学生管理系统,不会的看这里

前言 嗨喽~大家好呀,这里是魔王呐 ❤ ~! 欢迎观看本篇文章呀~不管你是学生还是工作人 我相信你进来了你就是想实现这个案例的 学会以后,还可以去接一些小小的外包,又是挣钱的一天~ 那么就开始实现吧!python制作GUI 学生管理系…

Curve 块存储应用实践 -- iSCSI

Curve 是云原生计算基金会 (CNCF) Sandbox 项目,是网易数帆发起开源的高性能、易运维、云原生的分布式存储系统。 为了让大家更容易使用以及了解 Curve,我们期望接下来通过系列应用实践文章,以专题的形式向大家展示 Curve。 本篇文章是Curv…

activiti框架搭建及问题记录

activiti应用什么是activitiactiviti配置首先创建项目配置pom依赖配置文件那么审批(流程)怎么创建呢?流程启动任务处理activiti问题分享数据库创建问题activiti事件监听器没有对象的问题什么是activiti activiti是一个业务流程管理的框架&am…

LeetCode中等题之使括号有效的最少添加

题目 只有满足下面几点之一,括号字符串才是有效的: 它是一个空字符串,或者 它可以被写成 AB (A 与 B 连接), 其中 A 和 B 都是有效字符串,或者 它可以被写作 (A),其中 A 是有效字符串。 给定一…

开发工具系列IDEA:配置注释自动生成

一、类、接口、枚举配置&#xff0c;进入idea后&#xff0c;依次打开 File -> Settings -> Editor -> File and Code Templates -> Files /*** FileName: ${NAME}* Author: ${USER}* Date: ${DATE} ${TIME}* Description: ${DESCRIPTION}* History:* <aut…

中国电信移动物联网发展成果与创新实践 ,干货满满

近日&#xff0c;首届移动物联网大会&#xff08;2022&#xff09;&#xff08;以下简称“大会”&#xff09;在江苏省无锡市举办。本次大会由工信部指导&#xff0c;中国信息通信研究院&#xff08;以下简称“中国信通院”&#xff09;、中国通信学会、无锡市人民政府、人民邮…