和Leon一起从头学Git(六)

一、什么是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。
    6217760-8f9afb8211cc3e6b.png
    图片发自简书App

为了验证是否成功,在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>
如此你就能够将你的改动推送到所添加的服务器上去了。

原文地址:https://www.cnblogs.com/leon1124/p/14039831.html