github学习:如何从本地把项目上传到github&&如何把github项目通过clone复制下来,详细教程
一、第一步---注册一个Github账号
首先要在GitHub上创建一个帐号,可以去官方网站注册一个账号。
前提:本地安装一个git
本人github:https://github.com/saucxs
二、git安装
下载地址:http://msysgit.github.io/
二、第二步---生成私钥和秘钥
由于本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以要在本地生成一个私钥和一个密钥
1、本地创建ssh key
$ ssh-keygen -t rsa -C "your_email@youremail.com"
说明:your_email@yourmail.com改为你github上注册的邮箱,之后会要求确认路径和输入密码,我们这使用默认的一路回车就行。成功的话会在~/下生成.ssh文件夹,进去,打开id_rsa.pub,复制里面的key。

可以不用设置密码,一直按回车就行了

三、第三步---查看私钥和秘钥

四、第四步---打开id_rsa.pub文件,复制里面的内容粘贴到GitHub指定的位置,按以下步骤可以添加一个公钥

复制,粘贴在下边地方,生成一个公钥。

公钥如图所示

验证本地创建SSh -key,是否成功。如果出现successful,表明已经成功连接上github。
输入
$ ssh -T git@github.com

五、把本地仓库传到github上去
1、在此之前还需要设置username和email,因为github每次提交都会记录他们
$ git config --global user.name "your name"
$ git config --global user.email "your_email@youremail.com" 接着上面敲得命令下面,继续输入上述两个命令。

2、github上新建一个项目。

会出现这个页面,如下图所示

然后你新建的github上的项目BPS1就成功了。如下图所示

3、在本地上传的仓库,右键git bash,添加远程地址
$ git remote add origin git@github.com:yourName/yourRepo.git
后面的yourName和yourRepo表示你再github的用户名和刚才github上新建的仓库。
4、在本地要上传的仓库,接着在2之后的命令行中输入以下内容。
git clone https://github.com/saucxs/BPS.git

红色部分是github上的https地址。
然后本地仓库文件夹里,出现了一个README的文件

5、把自己需要上传的项目文件复制到这里。

6、按照命令一步步进行
(1)git init
初始化

(2)git status
获取现在文件夹现在的状态

(3)git add personal-recommendation-system
红字部分是要上传的文件夹名

(4)git status
获取现在的状态,由刚才的红色变成绿色。

(5)git commit -m “提交信息”
红色部分信息是提交信息,你可以随便加。

(6)git push origin master
上传到服务器

(7)弹出一个github的登录页面,输入github用户名和密码
然后在命令行中再次输入用户名和密码。然后就完成上传到github上。

PS:
1、本地使用的基本命令
| 行为 | 命令 | 备注 |
|---|---|---|
| 初始化 | init | 在本地的当前目录里初始化git仓库 |
| clone 地址 | 从网络上某个地址拷贝仓库(repository)到本地 | |
| 查看当前状态 | status | 查看当前仓库的状态。碰到问题不知道怎么办的时候,可以通过看它给出的提示来解决问题 |
| 查看不同 | diff | 查看当前状态和最新的commit之间不同的地方 |
| diff 版本号1 版本号2 | 查看两个指定的版本之间不同的地方。这里的版本号指的是commit的hash值 | |
| 添加文件 | add -A | 这算是相当通用的了。在commit之前要先add |
| 撤回stage的东西 | checkout -- . | 这里用小数点表示撤回所有修改,在--的前后都有空格 |
| 提交 | commit -m "提交信息" | 提交信息最好能体现更改了什么 |
| 删除未tracked | clean -xf | 删除当前目录下所有没有track过的文件。不管它是否是.gitignore文件里面指定的文件夹和文件 |
| 查看提交记录 | log | 查看当前版本及之前的commit记录 |
| reflog | HEAD的变更记录 | |
| 版本回退 | reset --hard 版本号 | 回退到指定版本号的版本,该版本之后的修改都被删除。同时也是通过这个命令回到最新版本。需要reflog配合 |
2、远程仓库的命令
| 行为 | 命令 | 备注 |
|---|---|---|
| 设置用户名 | config --global user.name "你的用户名" | |
| 设置邮箱 | config --global user.email "你的邮箱" | |
| 生成ssh key | ssh-keygen -t rsa -C "你的邮箱" | 这条命令前面不用加git |
| 添加远程仓库 | remote add origin 你复制的地址 | 设置origin |
| 上传并指定默认 | push -u origin master | 指定origin为默认主机,以后push默认上传到origin上 |
| 提交到远程仓库 | push | 将当前分支增加的commit提交到远程仓库 |
| 从远程仓库同步 | pull | 在本地版本低于远程仓库版本的时候,获取远程仓库的commit |
3、更好的理解git

github学习:如何从本地把项目上传到github&&如何把github项目通过clone复制下来,详细教程的更多相关文章
- Myeclipse10.7安装git插件并将Java项目上传到码云(github)
注:本文来源:外匹夫的<Myeclipse10.7安装git插件并将Java项目上传到码云(github)> 一.先说说安装egit插件的步骤(安装egit不成功的原因主要是下载的egit ...
- github学习心得。哈哈,今天上传了自己的项目!
使用github托管代码 仓库(Repository) 用来存放项目代码,每个项目对应一个仓库.如果有多个项目了就需要多个仓库 收藏(star) 仓库主页star按钮,意思为收藏项目的人数 复制克隆项 ...
- GitHub Desktop 如何创建本地仓库,上传代码,删除仓库
1.创建本地仓库 2.打开本地仓库,将要上传的文件放到本地仓库. 3.ctrl+p push仓库或者菜单栏Repository下push也可以用右上角的publish respository 4.左边 ...
- Idea项目上传到gitlab(以新建项目为例)
1.首先,需要你自己登录GitLab,并新建一个项目的链接,如下图所示: 图一: 图二: 图三(idea上传时用到此链接): 2.在idea上新建一个demo项目,创建一个Git仓库: 3.点击创建后 ...
- Git学习系列之如何正确且高效地将本地项目上传到Github(图文详解)
不多说,直接上干货! 首先你需要一个Github账号,所以还没有的话先去注册吧! https://github.com/ 见 如何走上更高平台分享传递干货知识:(开通个人Github面向开源及私有软件 ...
- 如何通过Git GUI将自己本地的项目上传至Github
最近在学习node.js和react,顺便复习了下AngluarJS相关的东西,写了些小demo想放在GitHub上,之前仅限于只申请了GitHub账号从没用过,今天花半天时间查资料认真学习Githu ...
- Git本地项目上传 & SourceTree & GitHub 简单使用
Git(分布式版本控制系统) Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. Git是一个开源的分布式版本控制系统,用以有效.高速的处理从很小到非常大的项目版本管理 ...
- 如何通过Git GUI将自己本地的项目上传至Github(转)
githud是一个程序员以后成长都会使用到的,先不说很多优秀的开源框架都在这上面发布,光是用来管理自己的demo都已经让人感到很方便,用得也很顺畅.而真正让我下定决心使用github的原因是因为两次误 ...
- 使用Git将本地项目上传到Github操作详解
Git的安装就不说了. 一.建本地仓库 1.第一步:我们需要先创建一个本地的版本库(其实也就是一个文件夹). 你可以直接右击新建文件夹,也可以右击打开Git bash命令行窗口通过命令来创建. 反正就 ...
- Git的使用--将本地项目上传到Github
Git的使用--将本地项目上传到Github 感谢作者 --> 原文链接 很早之前就注册了Github,但对其使用一直懵懵懂懂,很不熟练.直到昨天做完百度前端技术学院的task,想把代码托管到G ...
随机推荐
- AspNet Core下利用 app-metrics+Grafana + InfluxDB实现高大上的性能监控界面
在日常系统工作中,我们为了洞察系统的问题和运作情况通常会记录日志的方式来进行分析,但是在很多情况下都是被动的在出问题后才会去查日志.在很多时候,我们可能更需要相对实时的了解整个系统或者某一时段的运行的 ...
- spark ML pipeline 学习
一.pipeline 一个典型的机器学习过程从数据收集开始,要经历多个步骤,才能得到需要的输出.这非常类似于流水线式工作,即通常会包含源数据ETL(抽取.转化.加载),数据预处理,指标提取,模型训练与 ...
- 在本机eclipse中创建maven项目,查看linux中hadoop下的文件、在本机搭建hadoop环境
注意 第一次建立maven项目时需要在联网情况下,因为他会自动下载一些东西,不然突然终止 需要手动删除断网前建立的文件 在eclipse里新建maven项目步骤 直接新建maven项目出了错 ...
- ElasticSearch本人启动报错总结
1.报错关键代码如下: Exception in thread "main" 2019-04-28 03:53:04,339 main ERROR No log4j2 config ...
- vs2013下配置x64版c++
最近在ddctf的比赛遇到了x64版的逆向,一大堆寄存器调试的头昏,然后比赛结束后在自己电脑上配置下x64版的c++环境记录下: 首先我们需要新建项目不再废话,然后选择:debug->配置管理器 ...
- Linux 体系结构
Linux 体系结构 Linux 嵌入式系统的组成 层次结构图 bios 1.硬件检测 2.初始化系统设备 3.装入os 4.调os向硬件发出的指令 bsp 板级支持包 硬件相关 开发板原理图 开 ...
- Html 常用标签及属性
<html>…</html> 定义 HTML 文档<head>…</head> 文档的信息<meta> ...
- iphone 屏蔽系统自动更新,消除设置上的小红点
苹果ios系统的更新频率大家应该都知道,一般来说1个月就会来次更新.这一点让很多人讨厌.主要原因还是iPhone会自动下载更新包,然后一直不停地提示你是否安装更新,问题是我们还找不到关闭提醒和关闭自动 ...
- margin相关属性值
1.图片与文字对齐问题 图片与文字默认是居底对齐.一般img标签打头的小图标与文字对齐的话,通过 img{margin:0 3px -3px 0;} 这个的东西,能实现效果和兼容性俱佳的对齐效果: d ...
- javascript是什么,可以做什么?
是一门脚本语言:不需要编译,直接运行 是一门解释型语言:遇到一行代码就解释一行代码 是一门动态类型的语言 是一门基于对象的语言 是一门弱类型的语言:声明变量的时候不用特别声明类型都使用var 不是一门 ...