( 转 )Github配置
以下转自 http://liuzhijun.iteye.com/blog/1457207
有问题请联系我删除。
-----————————————————————————
如果你的代码不知道放哪里好,放到github是一个不错的选择。下面奉上一文入门级别的配置篇。(以下配置同时适用于window和linux)
在github注册完后,首先创建一个仓库(repositry),在你的个人页面右边"Your Repositories"模块,点击 New repository,这里我们把project name 填写为 “test"

除了项目的名字是必填的外,另外两个空是可选的。点击”Create repository"之后会看到下面这个页面:

这就是你接下来要做的事情。首先你要安装Git客户端,windows版本下载地址,安装的时候根据提示选择下一步就行,安装完后就是设置SSH Keys
打开安装目录,进入Git Bash控制台

1、检查是否存在SSH keys,如果第一次安装是没有的,输入命令(这里的命令输入方式基本和在linux下面是一样的),如果存在key了,可以直接跳到第4步。(下面的$符号是作为命令行的开始,不需要手动输入)
注意:在linux的用户目录可能没有.ssh目录,需要自己创建
- $ cd ~/.ssh
如果显示 “No such file or directory "那么直接到第3步,否则执行第2步(这里的意思是说,若果没有.ssh目录,我们就要去创建一个,如果存在的话,我们就备份已经存在的)
2、备份、移除以存在的SSH keys
- $ ls
- $ mkdir key_backup
- $ cp id_rsa* key_backup
- $ rm id_rsa*
(把id_rsa*开头的文件备份到key_backup)文件中去,在把这些文件从当前目录移除
3、生成新的SSH Key
- $ ssh-keygen -t rsa -C "your_email@youremail.com"
注:如果提示错误Could not create directory '//.ssh',需要设置环境变量“home"--->"你的home目录",我这里是这样设置的 home----->users/cloudview,出现这个错误我很奇怪,不知是否安装了其他软件导致系统环境变量发生改变还是其他原因,待查?
(上面的email是你注册时的email地址,注意双引号不能省略,提示要输入文件名来保存key是,默认按回车就行,采用系统默认的保存方式即可,接下来回提示输入一个叫”passphrases"的东西,可以简单的理解为本地机器与github通信时的凭证,相当于密码,但是比密码更复杂,也更安全,这个要记住,以后要用的)
最后你将看到(fingerprint)一串16进制的数字,同时在当前路径的.ssh目下面生成id_rsa.pub文件。说明key已经生成了
4、把刚刚生成的key添加到GitHub中去
在GitHub站点点击 Account Setting > SSH keys >Add SSH key,不清楚的可以看下图

用编辑器(notepad++,vim)打开id_rsa.pub文件,选取所有内容拷贝到key的输入框里。这样key就添加成功了。

此时里成功已经不远了,就差一步测试了。输入如下命令
- $ ssh -T git@github.com
会提示是否继续连接,yes后,你将看到如下信息,说明应经大功告成了
别急,虽然可以连接成功了,但还不知道怎么上传文件到GitHub去呢,接下来就来试一试。
5、上传文件到GitHub
首先设置好个人信息,用于在提交代码是说明是谁提交的,然后还可以用email去联系他。
- $ git config --global user.name "Firstname Lastname"
- $ git config --global user.email "your_email@youremail.com"
上面的名字通常是你的真实姓名。
接下来执行以下命令
- mkdir test
- cd test
- git init
- touch README
- git add README
- git commit -m 'first commit'
- git remote add origin git@github.com:lzjun/test.git
- git push -u origin master
大概意思就是在本地创建test目录,初始化,创建一个README文件,当然这个文件时空的,你可以往里面填内容。接下来就是add就是把README文件纳入到git的管理范围内,
commit:相当于把你项目的代码,文件及所有的东西做一个快照,(好比我们拍照),这所有的文件定格在这个时刻,之后的每一次commit也只把那些发生了改变的文件做快照。此时还并没有把代码提交到GitHub上去
remote:和GitHub建立远程连接,注意这里的"lzjun"就是我的账户名,这根据自己的名称做相应的改变。这一步只在你第一次提交文件的时候出现,并且要输入之前的pressphrases.
push:就很好理解了,把文件推送到GitHub站点去。
! [rejected] master -> master (non-fast-forward)
error: failed to push some refs to 'git@github.com:lzjun/test.git'
To prevent you from losing history, non-fast-forward updates were rejected
Merge the remote changes (e.g. 'git pull') before pushing again. See the
'Note about fast-forwards' section of 'git push --help' for details.
可以先pull一遍
赶紧打开GitHub站点看看,你的test仓库里是否多了个README文件。
6、如果Fork别人的项目
如果想下载名为username用户的项目,我们需要使用clone命令,假设项目名叫“tools"
- git clone git@github.com:username/tools.git
补充:commit 的时候如果发生乱码:可以添加如下设置
- git config --global i18n.commitencoding utf-8
参考:http://help.github.com/fork-a-repo/,图片来源于该站点。
( 转 )Github配置的更多相关文章
- window下配置SSH连接GitHub、GitHub配置ssh key
window下配置SSH连接GitHub.GitHub配置ssh key 此经验分两部分: 第一部分介绍:在windows下通过msysGit(Git for windows.Git Bash)配 ...
- 跟我学SpringCloud | 第六篇:Spring Cloud Config Github配置中心
SpringCloud系列教程 | 第六篇:Spring Cloud Config Github配置中心 Springboot: 2.1.6.RELEASE SpringCloud: Greenwic ...
- github配置及使用
安装git 对于linux系统,不同发行版本的安装方法不一样,请参考https://git-scm.com/download/linux.以ubuntu为例: sudo add-apt-reposit ...
- github配置和git学习
参考:http://www.eoeandroid.com/thread-272837-1-1.html http://blog.csdn.net/hcbbt/article/details/11651 ...
- window下配置SSH连接GitHub、GitHub配置ssh key(转)
转自:http://jingyan.baidu.com/article/a65957f4e91ccf24e77f9b11.html 此经验分两部分: 第一部分介绍:在windows下通过msysGit ...
- ubuntu 14.0 下github 配置
一:创建Repositories 1:首先在github下创建一个帐号.这个不用多说,然后创建一个Repositories. 2:然后在ubuntu下安装git相关的东东: 1 sudo apt-ge ...
- windows中使用Git工具连接GitHub(配置篇)
Git在源码管理领域目前占很大的比重了,而且开源的项目很多都转到GitHub上面了.例如:jQuery, reddit, Sparkle, curl, Ruby on Rails, node.js, ...
- 同一台电脑使用 gitlab 和 github 配置
Git 客户端与服务器端的通信支持多种协议,ssh 最常用.ssh的公钥登录流程,用户将自己的公钥存储在远程主机,登录时,远程主机会向用户发送一条消息,用户用自己的私钥加密后,再发给服务器.远程主机用 ...
- github配置ssh密钥的方法
配置用户名和邮箱 初次安装git需要配置用户名和邮箱,否则git会提示:please tell me who you are. 你需要运行命令来配置你的用户名和邮箱: $ git config --g ...
随机推荐
- just so you're clear
The Google Resume的第一句话是: Just so you're clear: it was not my idea to give a talk to Microsoft Resear ...
- 【CF】323 Div2. D. Once Again...
挺有意思的一道题目.考虑长度为n的数组,重复n次,可以得到n*n的最长上升子序列.同理,也可以得到n*n的最长下降子序列.因此,把t分成prefix(上升子序列) + cycle(one intege ...
- USACO3.44Raucous Rockers
USACO挂了一小时..我坚持不懈的等..终于打开了 把3章最后一题交了 可以安心的睡去了 之前题意没看清楚 不知道要有序 写了一状压 结果TLE了 再优化也TLE 后来想写状态转移时发现 它必须有 ...
- JIRA Cannot Start Due to 'unable to clean the cache directory: /opt/jira/plugins/.osgi-plugins/felix'
Symptoms After restarting JIRA, the following error appeared: JIRA Startup Failed You cannot access ...
- Devexpress 汉化 代码 zt
将一下代码放到需要汉化的窗体Load事件中 解压汉化初丁文件 /// <summary> /// 汉化DX控件 /// </summary> private void Chin ...
- NIO的学习
参考 http://wenku.baidu.com/link?url=rq-BEp3Et4JRrE62f2Lv9hq8nT_Gq0XPb65h8OBqTAt-ILfqKmdjIhVEp8bctIdm0 ...
- Linux操作系统的LILO详解
LILO是一个在Linux环境编写的Boot Loader程序(所以安装和配置它都要在Linux下).它的主要功能就是引导Linux操作系统的启动.但是它不仅可以引导Linux,它还可以引导其他操作系 ...
- HighCharts 后台加载数据的时候去掉默认的 series
var chart; var options = { chart: { renderTo: 'container', type:'line' }, title: { text: '历史趋势时序图', ...
- C#中A a=new B()的意义
A a=new B()的意义 前提:A是B的父类. A a = new B(); 或 A a; B b=new B(); a=b; 这一句的过程是这样的, 1)创建一个类A的引用a 2)创建一个类B的 ...
- ASP.NET- LinkButton 传递多个参数
在使用LinkButton时可能会遇到需要传递多个参数的问题,而LinkButton的用来传递参数的属性commandargument需要传递的是一个string类型的值.因而传递多个参数时需要进行一 ...