1. 先去git官网https://git-scm.com/下载git;

2. 桌面新建文件夹,例如project,文件夹中新建任意文件例如index.html;

3. 打开文件夹,按住shift+右键,点击Git Bash Here打开命令行窗口;

4. 首先创建仓库:输入命令git init回车,会发现当前目录下多了一个.git的目录,这个目录是Git来跟踪管理版本库的,没事千万不要修改这个目录里面的文件,否则会破坏Git仓库;

5. 配置信息:git config –global user.name “name”   git config –global user.email “email”,分别写入你的名字和邮箱 ;

6. 创建SSH KEY。先看一下C盘用户目录下有没有.ssh目录,有的话看下里面有没有id_rsa和id_rsa.pub这两个文件,有就跳到下一步,没有就通过下面命令创建:ssh-keygen -t rsa -C "youremail@example.com",然后一路回车。直到出现一个类似数字图形即为成功,这时你就会在用户下的.ssh目录里找到id_rsa和id_rsa.pub这两个文件 ,分别为私钥和公钥;

7. 登录Github,找到右上角的图标,打开点进里面的Settings,再选中里面的SSH and GPG KEYS,点击右上角的New SSH key,然后Title里面随便填,再把刚才id_rsa.pub里面的内容复制到Title下面的Key内容框里面,最后点击Add SSH key,这样就完成了SSH Key的加密;

8. 在Github上创建一个Git仓库。可以直接点New repository来创建,比如我创建了一个project的仓库,写入名字,描述,点击下方Create Repository即创建成功;

9. 在Github上创建好Git仓库之后就可以和本地仓库进行关联了,根据创建好的Git仓库页面的提示,可以在本地project仓库的命令行输入:git remote add origin git@github.com/name/project.git

(切记name和project写你自己名字,项目名,默认为https协议,可以自由切换,点击clone or download,在下方点击Use SSh即可切换)

10. 关联好之后我们就可以把本地库的所有内容推送到远程仓库,先将内容添加至仓库,在本地project仓库的命令行输入:git add .(.为将全部文件添加至仓库,也可以写要添加的文件名替换点,add后有空格);

11. 用git commit把项目提交到仓库:git commit -m "这里是本次提交注释内容",-m为注释内容,可不写,但处于开发角度来说,最好写上;

12. 把本地库的所有内容推送到远程仓库(也就是Github):git push -u origin master,由于新建的远程仓库是空的,所以要加上-u这个参数,等远程仓库里面有了内容之后,下次再从本地库上传内容的时候就不需要-u了,直接git push origin master;

13. 等待一会儿,上传成功后,再重新刷新Github页面进入刚才新建的那个仓库里面就会发现原本的空项目已经多了一个index.html文件,此时项目已经成功上传了;

14.  另外,这里有个坑需要注意一下,就是在上面第8步创建远程仓库的时候,如果你勾选了Initialize this repository with a README(就是创建仓库的时候自动给你创建一个README文件),那么到了第13步你将本地仓库内容推送到远程仓库的时候就会报一个failed to push some refs to  git@github.com/name/project.git的错。 这是由于新创建的那个仓库里面的README文件不在本地仓库目录中,这时可以通过以下命令先将远程仓库内容拉取到本地仓库:git pull --rebase origin master,这时再执行git push origin master就能成功了。

15. 远程仓库的克隆:新建好远程仓库后,在本地新建文件夹,创建本地仓库,然后执行命令:git clone git@github.com:name/project.git,执行完成后,即可在本地目录中看到和远程仓库一样的文件夹,即克隆成功。

总结:其实只需要进行下面几步就能把本地项目上传到Github

    1、在本地创建一个版本库(即文件夹),通过命令:git init把它变成Git仓库;

  2、使用命令:git config –global user.name “name” git config –global user.email “email”配置个人信息(第一次使用时配置,后续不必配置);

    3、把项目复制到这个文件夹里面,再通过命令:git add .把项目添加到仓库;

    4、再通过命令:git commit -m "注释内容"把项目提交到仓库;

    5、在Github上设置好SSH密钥后(初次使用),新建一个远程仓库,通过git remote add origin https://github.com/name/project.git将本地仓库和远程仓库进行关联;

    6、最后通过命令:git push -u origin master把本地仓库的项目推送到远程仓库(也就是Github)上;

  7、通过在本地仓库执行命令:git clone git@github.com:name/project.git即可将远程仓库内容克隆至本地。

 注意: 在长时间不用时,感觉所有步骤都对但还是会报Please make sure you have the correct access rights and the repository exists时,可以删除.ssh目录后,重新配置名字邮箱,重新创建SSH KEY生成.ssh目录,然后再pull再push,也许会解决这个问题。

 

 

 

 

 

github项目上传与克隆的更多相关文章

  1. github项目上传管理

    一.完成项目后再在github上面新建仓库然后上传代码文件 1.创建仓库时不初始化README.md文件 touch README.md //此行可忽略 git init //初始化仓库 git ad ...

  2. 配置github的SSH key及GitHub项目上传方式一——使用终端命令行

    GitHub是一个开源的大仓库,我们经常从github上下载项目进行学习和研究,下面是一个完整的步骤——往GitHub上传一个新项目. 一.注册GitHub账号 1.注册GitHub账号,地址:htt ...

  3. 如何将github项目上传至gitlab

    一.修改远程分支关联 删除远程分支关联 将指向github的远程分支关联关系删除 git remote rm origin 添加新的远程分支关联 新的remote地址指向gitlab相应地址 git ...

  4. 使用 vscode将本地项目上传到github、从github克隆项目以及删除github上的某个文件夹

    安装Git后,可以看到windows环境下有两个命令输入窗口Git CMD 和Git Bash Git GUI是可视化图形界面 Git中的Bash是基于CMD的,在CMD的基础上增添一些新的命令与功能 ...

  5. vscode 将本地项目上传到github、从github克隆项目以及删除github上的某个文件夹

    一.将本地项目上传到github 1.创建本地仓库(文件夹) mkdir study//创建文件夹studycd study //进入study文件夹 2.通过命令git init把这个文件夹变成Gi ...

  6. mac下安装git,并将本地的项目上传到github

    mac下安装git 安装过程: 1.下载Git installer http://git-scm.com/downloads 2.下载之后打开,双击.pkg安装 3.打开终端,使用git --vers ...

  7. vue项目上传Github预览

    最近在用Vue仿写cnode社区,想要上传到github,并通过Github pages预览,在这个过程中遇到了一些问题,因此写个笔记,以便查阅. 完成Vue项目以后,在上传到github之前,需要修 ...

  8. Git的使用--如何将本地项目上传到Github(三种简单、方便的方法)

    一.第一种方法: 1.首先你需要一个github账号,所以还没有的话先去注册吧! https://github.com/ 我们使用git需要先安装git工具,这里给出下载地址,下载后一路(傻瓜式安装) ...

  9. 使用git将项目上传到github

    使用git将项目上传到github(最简单方法)   首先你需要一个github账号,所有还没有的话先去注册吧! https://github.com/ 我们使用git需要先安装git工具,这里给出下 ...

随机推荐

  1. Oracle中hex和raw的相互转换

    可以参考以下语句: select hextoraw(rawtohex('你好')) from dual select utl_raw.cast_to_varchar2(hextoraw('E4BDA0 ...

  2. ASP.NET页面之间传值的方式之Server.Transfer(个人整理)

    Server.Transfer 这个方法相比以前介绍的方法稍微复杂一点,但在页面间值传递中却是特别有用的,使用该方法你可以在另一个页面以对象属性的方式来存取显露的值,当然了,使用这种方法,你需要额外写 ...

  3. centos7将网卡名字改成eth样式

    ll /etc/sysconfig/grub lrwxrwxrwx 1 root root 17 Jun 12 2016 /etc/sysconfig/grub -> /etc/default/ ...

  4. Python-----多线程threading用法

    threading模块是Python里面常用的线程模块,多线程处理任务对于提升效率非常重要,先说一下线程和进程的各种区别,如图 概括起来就是 IO密集型(不用CPU) 多线程计算密集型(用CPU) 多 ...

  5. Jmeter上传附件EXCEL

    1.通过对上传附件接口进行抓包,获取的信息如下: 2.在jmeter脚本中添加http请求,并添加http请求头信息如下: 3.在http请求中添加上传附件的内容如下,由于我上传的是excel,所以M ...

  6. Linux中检查本地系统上的开放端口列表的方法

    在 Linux 中很少有用于此目的的实用程序.然而,我提供了四个最重要的 Linux 命令来检查这一点. 你可以使用以下四个命令来完成这个工作.这些命令是非常出名的并被 Linux 管理员广泛使用.n ...

  7. java面向对象总结(二)

    Java 封装 实现Java封装的步骤 java面向对象值继承 概念: 继承的格式: 类和类之间的关系: 继承的特点: 继承的优缺点 继承的好处: 继承的缺点: 继承的注意事项: 使用继承的步骤: J ...

  8. django自定义simple_tag和filter

    1.自定义simple_tag: 1).在app目录名下创建templatetags目录,并新建__init__.py文件. 2).在templatetags目录下创建任意名字的py文件,例如rema ...

  9. Docker初始

    如今Docker的使用已经非常普遍,特别在一线互联网公司.使用Docker技术可以帮助企业快速水平扩展服务,从而到达弹性部署业务的能力.在云服务概念兴起之后,Docker的使用场景和范围进一步发展,如 ...

  10. centos6删除nginx

    1.ps -ef|grep nginx 查看nginx进程 2.找到nginx相对应的位置 3.停止nginx服务: 4.删除nginx安装的相关路径(根据自己安装的情况来删除) 如果是yum安装,就 ...