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 ...
随机推荐
- VMware虚拟机中的常用文件介绍
虚拟机的文件管理由VMware Workstation来执行.一个虚拟机一般以一系列文件的形式储存在宿主机中,这些文件一般在由workstation为虚拟机所创建的那个目录中. 如下图所示:(< ...
- MySQL之Join
参见MySQL(以5.1为例)中官方手册:MySQL官方手册-JOIN 假设有以下几个表 t1 id book 1 java 2 c++ 3 php t2 id author 2 zhang 3 wa ...
- ArrayAdapter参数的不同运用
ArrayAdapter参数不同带来的效果不同 String[] array = {"a","b","c","d",&q ...
- 基础组件_panel面板
面板作为承载其它内容的容器.这是构建其他组件的基础(比如:layout,tabs,accordion等).它还提供了折叠.关闭.最大化.最小化和自定义行为.面板可以很容易地嵌入到web页面的任何位置. ...
- 适用于Firemonkey的Json解析对象XsuperObject使用方法介绍
XSuperObject是适用于FileMonkey平台的JSON解析组件,能够在Android,IOS,MACOS,WINDOWS等多个平台使用 点击下载 Sample JSON { "n ...
- HDU 2830 Matrix Swapping II
给一个矩阵,依然是求满足条件的最大子矩阵 不过题目中说任意两列可以交换,这是对题目的简化 求出h数组以后直接排序,然后找出(col-j)*h[j]的最大值即可(这里的j是从0开始) 因为排序会影响到h ...
- poj 3353 Road Construction tarjan 边双联通分支 缩点+结论
题意:一个连通的无向图,求至少需要添加几条边,救能保证删除任意一条边,图仍然是连通的. 链接:http://poj.org/problem?id=3352 思路:边的双连通图.其实就是要求至少添加几条 ...
- 作业调度框架 Quartz.NET 2.0 StepByStep
注:目前网上诸多介绍Quartz.net的文章,甚至Quartz.net官网上的Tutorial都是1.0版本的,而这个项目在2.0版本对项目进行了比较大规模的修改,使得原有的很多例子都不能运行,故写 ...
- 14.Object-C--浅谈Foundation框架字符串NSString 与NSMutableString
OC的字符串时经常使用到的,今天我对于OC字符串做一个简单的总结,如果有错误之处,麻烦留言指正.感谢! NSString是一个不可变长度的字符串对象.表示它初始化以后,你不能改变该变量所分配的内存中的 ...
- 阿里云linux服务器安装Phalcon-----"phalcon Volt directory can't be written" "gcc: internal compiler error: Killed (program cc1)"
这里特别蛋疼的一件事是官方英文文档和中文文档命令参数略有不同 中文文档: //通用平台下安装指定的软件包: sudo yum install git gcc make pcre-devel php-d ...














