1.前言:

  我们使用git,自然是希望我们的项目可以方便的从本地上传到git的仓库中,从而实现项目版本控制和备份,但是,从GitHub的网站上传文件,只能上传25MB的数据,我想多数人的项目都不可能只有25MB(甚至小于25MB),所有为了突破网页端的上传限制,我们必须从其他地方考虑,比如说,本地命令(git-bash),使用步骤如下。

2.步骤:

  2.1 首先在GitHub网站,注册账号、创建仓库(仓库名随意)

  2.2 下载及安装git

  2.3 配置Git

  • 先建一个本地仓库,取名为 iGit
    在Windows 下新建文件夹 iGit,双击进入,空白处右键选择“Git Bash Here”开启命令行窗口
  • 命令行执行
    $ git init

之后 iGit 文件下会多出来一个 .git 文件夹,表示本地 Git 仓库创建成功。

  • 本地创建 SSH key

    $ ssh-keygen -t rsa -C "你的GitHub注册邮箱"

回车后,会在默认文件 id_rsa.pub 上生成 SSH key,位置:C:\Users\用户名.ssh
之后系统要求输入密码,直接回车不设密码,重复密码时再次回车,之后显示 SSH key 已经生成成功。

打开 id_rsa.pub 文件,复制文件中的 key,粘贴到 GitHub 网站 Account Settings 中的 SSH keys,Add SSH key 中。如图:

  2.4 验证配置是否成功,在 Git Bash Here 命令行下输入如下命令:

    $ ssh -T git@github.com

  2.5设置 username 和 email,添加远程地址:

    $ git config --global user.name "your name"

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

    配置好这两项,用户就能知道谁做了什么,并且一切都更有组织性了不是吗?

    $ git remote add origin git@github.com:用户名/Git仓库名称.git
    $ git config branch.master.remote origin
    $ git config branch.master.merge refs/heads/master

    一个项目可以同时拥有好几个远端仓库为了能够区分,通常会起不同的名字。通常主远端仓库被称为 origin。

    加完之后进入 .git,打开 config,这里会多出一个 remote “origin”内容,这就是刚才添加的远程地址,也可以直接修改 config 来配置远程地址。

  2.6 提交上传本地文件

  • 在本地仓库添加一个文件,比如 README
  • 命令行输入命令提交
    $ git add README.md
    $ git commit -m "提交注释"

  Git 有个概念叫 暂存区,你可以把它看成一块空白帆布,包裹着所有你可能会提交的变动。它一开始为空,你可以通过 git add 命令添加内容,并使用 git commit 提交,-m "提交注释"表示对这次提交的描述。

  这里要加文件扩展名,否则报错:fatal: pathspec 'README' did not match any files (要将整个文件夹都提交的话,不需要加后缀名,直接全部提交文件夹名就可以)

  • 上传到 GitHub

   $ git push origin master

  上述命令意义:git push <远程主机名> <本地分支名>:<远程分支名>

  git push命令会将本地仓库推送到远程服务器。
  但是,这一步,报错了:

  error: src refspec master does not match any.

  因为,我之前,在网页端对仓库做过修改,所以,在第一次提交项目前,应该要先使用pull命令,同步远程仓库到本地,命令如下:

   $  git pull origin master

  但是,此时,又报错了,,,

  error:refusing to merge unrelated histories.

  这个问题在2.9.0之后的版本才出现的,以前的版本可以正常工作。所以最后我的命令是:

   $ git pull origin master --allow-unrelated-histories

  此时,再执行:

   $ git push origin master

  上传成功,刷新页面可以看到项目文件夹已经完整的上传了。

参考链接:

http://www.jianshu.com/p/0fce531dba31

http://blog.csdn.net/u010853261/article/details/51935503

github 第一次使用及出现的问题解决的更多相关文章

  1. Git本地仓库push至GitHub远程仓库每次输入账户密码问题解决(亲测可行)

    在使用git push命令将本地仓库内容推送至GitHub远程仓库的每一次git都要让我们输入GitHub的用户名和密码.这着实让我们心烦.我们会有疑问,我明明设置了公钥呀!怎么还需要输入账户和密码? ...

  2. git同步本地数据到github——第一次使用和以后使用

    git作为版本控制工具十分的好用,但是在使用的过程中,会因为仓库版本的不同步出现很多错误 一.git简单的原理交互模型 从下面的model中我们看到在不创建分支情况下始终是远程的origin和本地的m ...

  3. github第一次作业链接

    https://github.com/xuhuzi/test/blob/master/test1 https://github.com/xuhuzi/test/blob/master/test2 ht ...

  4. GitHub分支项目不支持搜索问题解决:Sorry, forked repositories are not currently searchable.

    错误如下: 在GitHub上的项目,如果是分支项目的星星数没有超过父项目,就不会去索引从而不会进行代码搜索. 解决方法: 1.要在搜索结果中包含分支,需要添加fork:true或fork:only查询 ...

  5. Github(第一次尝试)

    重要提示:项目中的文件最好最好不要出现中文,尤其是复杂的中文文件名. 前提:本地已经用git 管理 一个测试项目(项目一),分支为master. 1.注册 github: http://git.osc ...

  6. github第一次引用开源的库

    想要使用这个一个东西 第一步就是在中添加上面那句话. 这个应该是俩种使用方法,一种用于java中一个用作控件引用 此时就能使用我们引用的这个库了.

  7. github常见问题【转自百度知道】

    1 git config --global user.name "Your Real Name" 2 git config --global user.email you@emai ...

  8. butterknife简介及Generate ButterKnife Injections 不出现的问题解决

    一.概述 butterknife是一款as的功能强大插件.有了它,你几乎可以和findViewById说byebye了. 二.使用 github地址:https://github.com/avast/ ...

  9. GitHub上有很多不错的iOS开源项目

    GitHub上有很多不错的iOS开源项目,个人认为不错的,有这么几个:1. ReactiveCocoa:ReactiveCocoa/ReactiveCocoa · GitHub:GitHub自家的函数 ...

随机推荐

  1. golang安装环境变量配置和beegoan安装

    下载安装 go get github.com/astaxie/beego bee 工具的安装 go get github.com/beego/bee 升级 $ go get -u github.com ...

  2. 002-基本业务搭建【日志,工具类dbutils,dbcp等使用】

    一.需求分析 1.1.概述 1.用户进入“客户管理”,通过列表方式查看用户: 2.客户名称,模糊查询用户列表 3.客户名称,可查看客户详细信息 4.新增.编辑.删除功能等 二.系统设计 需要对原始需求 ...

  3. python中的逻辑操作符

    python中主要有三个逻辑操作符,分别是:and.or.not. and:且,所有人为真才为真. or:或,一个为正就是真. not:非,取反. >>> print(3>2 ...

  4. 利用onresize使得div可以随着屏幕大小而自适应的代码

    原文:http://www.jb51.net/article/21831.htm 当我们让div居中时候,一般有两种方法,一种是固定左右宽度,也就是使用像素绝对定位:另一种是用百分比来相对定位,在这种 ...

  5. input propertyChange

    結合 HTML5 標準事件 oninput 和 IE 專屬事件 onpropertychange 事件來監聽輸入框值變化. oninput 是 HTML5 的標準事件,對於檢測 textarea, i ...

  6. iOS 什么是函数式编程

    前言:当前只做理解性的常规背书,根据不断深入学习会不断丰富解读内容,欢迎评论提意见 函数式编程:Functional Programming 1 基本解释: 函数式编程 是一种思维模式,一种编程思想, ...

  7. 优化MD5和IP在(MySQL)数据库中的存储

    1.MD5在MySQL数据库中的存储 用CHAR(32)来存储MD5值是一个常见的技巧.如果你的应用程序使用VARCHAR(32),则对每个值得字符串长度都需要花费额外的不 必要的开销.这个十六进制的 ...

  8. OWASP十大攻击类型详解

    随着WEB应用技术的不断进步与发展,WEB应用程序承载了越来越多的业务,而随之而来的也是WEB应用所面临的越来越复杂的安全问题.而WEB日志作为WEB安全中的一个重要组成部分,不但可在事后起到追踪和溯 ...

  9. OC_内存管理(二)对象复制、循环引用问题、自动释放池

      循环调用: 1.循环引用的问题 两个对象A.B,有可能会出现特殊情况:A中包含B的实例变量:B中也包含A的实例变量,如果这两个实例变量都是强引用(A有着B的实例变量所有权,B也有A的实例变量所有权 ...

  10. 前段时间说了AssetBundle打包,先设置AssetLabels,再执行打包,但是这样有个弊端就是所有设置了AssetLabels的资源都会打包,这次说说不设置AssetLabels,该如何打包AssetBundle

    BuildPipeline.BuildAssetBundles() 这个函数,有多个重载,一个不用AssetBundleBuild数组,一个需要,如果设置了AssetLabels,那么这时候是不需要的 ...