github 第一次使用及出现的问题解决
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 第一次使用及出现的问题解决的更多相关文章
- Git本地仓库push至GitHub远程仓库每次输入账户密码问题解决(亲测可行)
在使用git push命令将本地仓库内容推送至GitHub远程仓库的每一次git都要让我们输入GitHub的用户名和密码.这着实让我们心烦.我们会有疑问,我明明设置了公钥呀!怎么还需要输入账户和密码? ...
- git同步本地数据到github——第一次使用和以后使用
git作为版本控制工具十分的好用,但是在使用的过程中,会因为仓库版本的不同步出现很多错误 一.git简单的原理交互模型 从下面的model中我们看到在不创建分支情况下始终是远程的origin和本地的m ...
- github第一次作业链接
https://github.com/xuhuzi/test/blob/master/test1 https://github.com/xuhuzi/test/blob/master/test2 ht ...
- GitHub分支项目不支持搜索问题解决:Sorry, forked repositories are not currently searchable.
错误如下: 在GitHub上的项目,如果是分支项目的星星数没有超过父项目,就不会去索引从而不会进行代码搜索. 解决方法: 1.要在搜索结果中包含分支,需要添加fork:true或fork:only查询 ...
- Github(第一次尝试)
重要提示:项目中的文件最好最好不要出现中文,尤其是复杂的中文文件名. 前提:本地已经用git 管理 一个测试项目(项目一),分支为master. 1.注册 github: http://git.osc ...
- github第一次引用开源的库
想要使用这个一个东西 第一步就是在中添加上面那句话. 这个应该是俩种使用方法,一种用于java中一个用作控件引用 此时就能使用我们引用的这个库了.
- github常见问题【转自百度知道】
1 git config --global user.name "Your Real Name" 2 git config --global user.email you@emai ...
- butterknife简介及Generate ButterKnife Injections 不出现的问题解决
一.概述 butterknife是一款as的功能强大插件.有了它,你几乎可以和findViewById说byebye了. 二.使用 github地址:https://github.com/avast/ ...
- GitHub上有很多不错的iOS开源项目
GitHub上有很多不错的iOS开源项目,个人认为不错的,有这么几个:1. ReactiveCocoa:ReactiveCocoa/ReactiveCocoa · GitHub:GitHub自家的函数 ...
随机推荐
- Java基础—Java运行原理
Java程序运行原理 在Java中引入了虚拟机(JVM,Java Virtual Machine)的概念,即在机器和编译程序之间加入了一层抽象的虚拟的机器.虚拟机在任何平台上都提供给编译程序一个的共同 ...
- 3.7 基于51单片机+MC20的路径显示【使用STC15W内核】
需要准备的硬件 MC20开发板 1个 https://item.taobao.com/item.htm?id=562661881042 GSM/GPRS天线 1根 https://item.taoba ...
- 常用python模块
webbrowser浏览器控制模块 主要知道 导入 webbrowser使用webbrowser.open(url)运行就可以在默认浏览器打开指定url 来自为知笔记(Wiz)
- jQuery EasyUI - 数据表格(DataGrid)
由于工作需要,项目使用前端 jQuery EasyUI - DataGrid 来控制数据表格. 1.加载相关js和css,因为easyui依赖jquery,所有加载easyui前要先加载jquery, ...
- LeetCode:螺旋矩阵||【59】
LeetCode:螺旋矩阵||[59] 题目描述 给定一个正整数 n,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵. 示例: 输入: 3 输出: [ [ 1, 2, 3 ...
- LeetCode:杨辉三角【118】
LeetCode:杨辉三角[118] 题目描述 给定一个非负整数 numRows,生成杨辉三角的前 numRows 行. 在杨辉三角中,每个数是它左上方和右上方的数的和. 示例: 输入: 5 输出: ...
- 05 Spring框架 依赖注入(二)
上一节我们讲了三种信息的注入,满足一个类的属性信息的注入,但是如果我们需要向一个实例中注入另一个实例呢?就像我们创建一个学生类,里边有:姓名,性别,年龄,成绩等几个属性(我习惯把类的域叫做属性),但是 ...
- [GUI] Linux中的图形管理
转:http://www.cnblogs.com/yongpenghan/p/4555619.html 做了一段时间linux下与QT事件相关的工作,经常会遇到X11,总是苦于无法完全理解其与linu ...
- 20165101刘天野 2017-2018-2 《Java程序设计》第4周学习总结
#20165101刘天野 2017-2018-2 <Java程序设计>第4周学习总结 教材学习内容总结 第五章:子类与继承 面向对象程序设计语言有三大特性:封装.继承和多态性.继承是面向对 ...
- INSPIRED启示录 读书笔记 - 第26章 合理运用敏捷方法
十大秘诀 1.产品经理即是产品负责人,他代表了客户的需求,因而需要与产品开发团队保持密切的联系,协助督促开发进程,及时解决出现的问题 2.使用敏捷方法绝不等于省略产品规划.规划周期应该适度缩短,反复迭 ...