Github在windows7环境下使用入门
1.下载并安装
下载和安装一般都没什么问题,网上的链接一大堆,不过还是在此给一个安装的地址和安装的参考吧。
当然,安装完成后要保证git能使用,必须配置github
2.配置github
- 首先是要创建本地ssh,具体命令如下:
ssh-keygen -t rsa -C youemail@xxx.xxx生成过程中会让你输入用户名和邮箱,出现错误不要管,提示输入yes就好了,然后进入生成的ssh目录中,将公钥打开(一般名为id_rsa.pub),将其中内容复制到github个人主页的ssh(操作顺序见下图)
- 验证是否配置成功
需要注意的是,由于github软件也可以为gitlab提供服务,本地生成的ssh密钥可能过期了,因此,当出现莫名其妙的错误的时候,可以尝试重新生成一下ssh key,比如,我曾经遇到过这样一个错误:
无效的操作:GIT_COMMITTER_IDENT
原因就是之前我用别的邮箱生成过密钥,因为长时间没有用github了,所以当时也没反应出来是什么错误,花了好一会理清思路之后有两个解决方案:
- 将之前公钥的内容复制进账户的ssh
- 如果还不行,重新生成密钥,再复制进账户的ssh
3.关于Git bash
安装完成之后在电脑端会有两个程序,一个Git Bash ,一个Git GUI,如下:
Git Bash是一个命令行操作的类dos界面,在里面敲击命令就跟在linux里面敲命令是一样的,因此熟悉了git操作的话用Git Bash来操作也是很方便的。
一般来说,在github主页上建立了新的repository之后,在repository的主页有对应的bash命令教你如何第一次上传和更新。如我的一个项目给出的提示如下:
4.关于Git GUI
对于不熟悉Git语法的人来说,最简明的方法莫过于直接用图形化界面Git GUI了,它和Git Bash可以完成的功能是一样的,每个图形化的操作都对应着一个Git Bash的指令,下图是图形化界面的全貌:
其中右下方的几个按钮的作用解释如下:
重新扫描:顾名思义就是扫描本地改动
缓存改动:将改动保存到缓冲区
签名:加上签名
提交:提交到本地仓库,需要加上提交时的说明信息
上传:上传到服务器,当然需要有github账号
5.一个使用的例子
我写了一个二叉树的算法框架,代码组织是这样的,在D:\codesep\…\Src下面有我要管理的代码,分别放在两个文件夹中,一个为include文件夹,一个为cpp文件夹。如下所示:
当我启动Git GUI时,我选择创建一个新的版本库(create a new repository)
选择D:\codesep\…\Src为本地目录,然后在此目录下多出了一个.git的文件夹,如下:
这之后D:\codesep\…\Src中的文件都会出现在下面界面的“未缓存的改动”一栏中,点击缓存改动(会提示你确认是否stage),文件转移到缓存的改动中。
缓存前: 缓存后:
![]()
点击“提交”,代码进入本地版本库。圈出来的红色框中会显示你的提交信息。
这些都好办,接下来是“上传”,上传按钮点击之后又如下界面。
目前我对git还不是特别了解,所以只解释源端分支和目标版本库:
源端分支是本地版本库的一个分支,因为目前我们只有master,即主分支,只能选这一个,目标版本库git@github.com是一样的表示github服务器,后面的一个是github的账户名(obalama是我的账户名),一个是在github上托管的版本库(比如说我有个版本库是BinaryTreeFrame,那么目标版本库的写法就是上述写法),点击“上传”按钮,输入ssh密码(第一步里面配置的密码)
成功之后显示如下:
有时候不成功就多试几次,可能是网速不好,也可能是因为github国内服务不稳定,待成功后,github的web页面上会显示出上传的版本库信息:
需要注意的是,如果在github主页上建立repository时选择了创建readMe.md或者.gitignore等文件时,用图形界面在最后一步输完密码开始push时会报错:
“Github “Updates were rejected because the remote contains work that you do not have ”
这时候只能借助bash来将这些文件先同步到本地仓库,然后再次push,具体命令如下
git remote add origin + git_url//(例子:git remote add origin https://github.com/obalama/VelocityHelloworld_2.git)//然后将github上的文件拉到本地git pull origin master//最后完成pushgit push origin master
6.说明
实际上GUI操作都有等效的bash操作,以上面的例子作类比,等过几天有了时间再总结一个类比。
7.参考
Github在windows7环境下使用入门的更多相关文章
- Windows7环境下Composer 安装包的Cache目录位置
http://segmentfault.com/a/1190000000355928 https://getcomposer.org/doc/ 要说Composer的用法,以后再说,现在只记录wind ...
- windows7环境下 硬盘安装ubuntu 12.04 server版
之前一直用windows7环境下的虚拟机装的操作系统,但有时候在切换系统时老是死机,还是装一个硬盘版的ubuntu 12.04 server吧 先说一下本人的环境吧:windows 7 32位专业版+ ...
- Python3.5在Windows7环境下Scrapy库的安装
Python3.5在Windows7环境下Scrapy库的安装 忙活了一下午,总算是把Scrapy库给装完了,记下来给需要帮助的人 首先安装的环境:Windows7 64位 Python的版本是:3. ...
- Windows7环境下Excel2010中图片超链接默认打开程序修改
在Windows7的环境下,打开Excel2010超链接图片,都是默认用IE打开.搜索了所有的中文网络,没有找到解决方案,且发现受此困扰的人不少.后来用纯英文搜索,终于找到解决方案并尝试成功. 1,操 ...
- windows7环境下使用pip安装MySQLdb for python3.7
1.首先,需要确定你已经安装了pip.在Python2.7的安装包中,easy_install.py和pip都是默认安装的.可以在Python的安装目录先确认,如果\Python37\Scripts里 ...
- windows7环境下使用pip安装MySQLdb
1.首先,需要确定你已经安装了pip.在Python2.7的安装包中,easy_install.py和pip都是默认安装的.可以在Python的安装目录先确认,如果\Python27\Scripts里 ...
- WINDOWS7环境下Informatica的安装[新手]
环境: 操作系统:Windows7(64位): 数据库:Oracle 11g R2: 数据库字符集:UTF-8 一.下载: (参考链接:https://blog.csdn.net/u011031430 ...
- Windows7环境下Apache连接MySQL提示“连接已重置”的解决办法
win7下手动搭建wamp环境,碰到的几个坑总结下, 1.能正常访问php和html类型文件,但是访问项目文件时老是连接被重置,后来总结是数据库的问题,就写测试用例测试php能否成功调用数据库, &l ...
- paper 52 :windows7环境下theano安装
要做卷积神经网络的一些东西,所以要装theano,网上很多Theano安装教程版本较老,而各安装包更新很快,参考价值有限.走了很多弯路才装好,把这个过程记录下来,希望对大家有帮助~ ~ 我的配置:wi ...
随机推荐
- JSON对象末尾多余逗号问题
平时开发用的IE10,没发现这个问题,测试人员对系统兼容性测试时发现了在IE7下存在问题. 问题代码如下: var person = { name: "John", age: 25 ...
- AE 栅格数据使用总结
RasterBand)的数据组成,一个波段就是一个数据矩阵.对于格网数据(DEM数据)和单波段的影像数据,表现为仅仅只有一个波段数据的栅格数据集,而对于多光谱影像数据则表现为具有多个波段的栅格数据集. ...
- MongoDB 学习笔记(五)索引
http://www.cnblogs.com/stephen-liu74/archive/2012/08/01/2561557.html
- ASP.NET26 个常用性能优化方法
数据库访问性能优化 数据库的连接和关闭 访问数据库资源需要创建连接.打开连接和关闭连接几个操作.这些过程需要多次与数据库交换信息以通过身份验证,比较耗费服务器资源. ASP.NET中提供了连接池(Co ...
- Qt之QHeaderView排序
简述 在Windows中我们经常会遇到表头排序,比如可以对文件按照名称.修改日期.类型.大小进行排序,方便我们统一的归类查找. Qt中,我们可以通过点击表头来对QTableView或QTreeView ...
- poj 3353 Road Construction tarjan 边双联通分支 缩点+结论
题意:一个连通的无向图,求至少需要添加几条边,救能保证删除任意一条边,图仍然是连通的. 链接:http://poj.org/problem?id=3352 思路:边的双连通图.其实就是要求至少添加几条 ...
- const,readonly 常量与只读
Const是常量 Const在编译时会被编译为静态成员,它确定于编译时期,属类型级,通过类型来访问. 现在通过以下几种情况来说明const常量: (1)初始化 public const string ...
- Swift 2.0 : 'enumerate' is unavailable: call the 'enumerate()' method on the sequence
Swift 2.0 : 'enumerate' is unavailable: call the 'enumerate()' method on the sequence 如下代码: for (ind ...
- Dom文档模型
文档对象模型 通过 JavaScript,您可以重构整个 HTML 文档.您可以添加.移除.改变或重排页面上的项目.要改变页面的某个东西,JavaScript 就需要获得对 HTML 文档中所 ...
- watch 命令实时命令执行监控
watch 命令 watch -d -n 1 'df; ls -FlAt /path' 在使用这条命令时你需要替换其中的 /path 部分,watch 是实时监控工具,-d 参数会高亮 显示变化的 ...














