一、什么是Github?
github是一个基于git的代码托管平台,付费用户可以建私人仓库,我们一般的免费用户只能使用公共仓库,也就是代码要公开。
Github由ChrisWanstrath,PJHyett与TomPreston-Werner三位开发者在2008年4月创办。迄今拥有59名全职员工,主要提供基于git的版本托管服务。
正是Github,让协作化编程成为现实。
二、怎么使用?
1、注册账户
要想使用github第一步当然是注册github账号了,点击github官网地址。之后就可以创建仓库了(免费用户只能建公共仓库),CreateaNewRepository,填好名称后Create,之后会出现一些仓库的配置信息,这也是一个git的简单教程。
2、配置Git
(1) 创建sshkey;
$ssh-keygen-trsa-C"your_email@youremail.com"
后面的your_email@youremail.com改为你在github上注册的邮箱,之后会要求确认路径和输入密码,我们这使用默认的一路回车就行。成功的话会在~/下生成.ssh文件夹,进去,打开id_rsa.pub,复制里面的key(不含你自己的邮箱地址)。
(2)添加sshkey;
- 进入github官网上,登录账户之后进入AccountSettings(账户配置),左边选择SSHKeys,AddSSHKey,title随便填,粘贴在你电脑上生成的key。
为了验证是否成功,在gitbash下输入:
$ssh-Tgit@github.com
如果是第一次的会提示是否continue,输入yes就会看到:
You'vesuccessfullyauthenticated,butGitHubdoesnotprovideshellaccess
这就表示已成功连上github。
(3)配置用户名和邮箱地址;
设置username和email,因为github每次commit都会记录他们。
$gitconfig--globaluser.name"yourname"
$gitconfig--globaluser.email"your_email@youremail.com"
3、建立关联
(1)已有本地仓库,需要和远程仓库关联
A.关联远程地址
- 进入本地仓库,输入以下命令,添加远程地址:
$gitremoteaddorigingit@github.com:yourName/yourRepo.git
后面的yourName和yourRepo表示你在github的用户名和刚才新建的仓库。命令执行完之后进入.git目录,查看config文件,这里会多出一个remote"origin"内容,这就是刚才添加的远程地址。当然你也可以直接修改config来配置远程地址。
B.同步远程仓库
- 假如你在本地还没有任何改动与提交,可以到服务器上获取最新的版本历史,并将你本地主分支指向它:
gitfetchorigin
gitreset--hardorigin/master
(2)直接从远端仓库克隆到本地
gitcloneusername@host:/path/to/repository
4、工作流程
你的本地仓库是由git维护的三棵"树"组成。
- 工作目录,它持有实际文件;
-暂存区(Index),它像个缓存区域,临时保存你的改动; - 提交历史(HEAD),它记录了你每一次提交的结果,并用HEAD指针指向最后一次提交。
(1)添加到暂存区
这是git基本工作流程的第一步,把你在本地对文件的修改,提交到暂存区。
[命令格式]:gitadd<filename>
(2)添加到本地历史树
这是git基本工作流程的第二步,把暂存区的有变动的文件元数据提交到了HEAD树,但是还没到你的远端仓库。
[命令格式]:gitcommit-m"代码提交信息"
(3)添加到远端历史树
你的改动现在已经在本地仓库的HEAD中了。执行如下命令以将这些改动提交到远端仓库:
[命令格式]:gitpushoriginmaster
可以把master换成你想要推送的任何分支。如果你还没有克隆现有仓库,并欲将你的仓库连接到某个远程服务器,你可以使用如下命令添加:
gitremoteaddorigin<server>
。
如此你就能够将你的改动推送到所添加的服务器上去了。