借助GitHub托管你的项目代码

1、基本概念

1.1 必须了解的概念

  • 仓库 - Repository
    仓库即你的项目,你想在GitHub上开源一个项目,那就必需要新建一个Repository。若是你开源的项目有多个,那么你就有多个Repositories。
  • 收藏 - Star
    收藏项目,方便下次查看。若是你的项目被收藏的次数越多,那么你的项目也就越受广大开发者的欢迎咯。
  • 复制克隆项目 - Fork
    若是你开源了一个项目,别人想在你这个项目的基础之上作些改进,而后应用到本身的项目中,这时他就能够Fork你的项目,而后他的GitHub主页上就多了一个项目,只不过这个项目是基于你的项目为基础(至关于别人拿到了一个副本)。Fork以后,他就能够为所欲为地去改进,可是丝绝不会影响原有项目的代码与结构。
  • 发起请求 - Pull Request
    若是别人在你的项目基础之上作了一些改进,而且以为改得很不错,应该要把这些改进让更多的人受益。因而,他就想把本身的改进合并进原有项目之中,这时他就能够发起一个Pull Request。而原有项目建立人也就是你,能够收到这个请求,这个时候你可能会仔细review他的代码,而且测试后以为OK,就能够接受他的Pull Request,以后他作的改进就能够融入到原有项目之中了。
  • 关注 - Watch
    相似于微博中的关注,若是你Watch了某个项目,那么之后只要这个项目有任何更新,你都会第一时间收到关于这个项目的通知提醒。
  • 事务卡片 - Issue
    你开源了一个项目,别人发现你的项目中有bug,或者哪些地方作的不够好,他就能够给你提一个Issue(即问题)。你若是看到了这些Issue,就能够逐个去Fix修复,修复OK以后就能够一个一个地Close掉。
  • GitHub主页
    若是你注册了一个GitHub帐号,那么久会有一个属于你的GitHub主页,该页面左侧主要显示用户动态以及关注用户/仓库的动态,右侧则显示全部的Git库。
  • 仓库主页
    仓库主页主要显示项目的信息,如:项目代码、版本、收藏/关注/Fork状况 等等。
  • 我的主页
    我的信息:头像、我的简介、关注个人人,我关注的人,我关注的Git库,个人开源项目,我贡献的开源项目信息 等等。
    你能够经过下图“形(Xie)象(E)”地理解GitHub主页。

1.2 必须完成的准备

要使用GitHub,首先必须得注册一个GitHub帐号啦!
注册过程很easy,就跟你平时注册小网站会员同样,详细信息能够浏览:点此了解注册详情
须要注意的地方就是,选择Free免费帐号完成设置!那么收费的跟免费的有什么区别呢?私有的仓库只有本身或者指定的朋友才有权限操做。html

注册完成以后,记住要验证邮箱!若是未验证邮箱,那么你是无法作后续操做的。git

2、GitHub基本操做

2.1 建立仓库

在GitHub中点击New repository活着Start a Project便可:github

如今我新建一个仓库,这个仓库假设是我写的一个数据结构的实例程序Demo程序库:服务器

Step1.填写必要信息:数据结构

Step2.浏览仓库主页工具

2.2 建立文件

在刚刚的仓库主页中点击 Create new file 按钮,便可进入新文件页面:学习

Step1.填写必要信息之文件信息测试

Step2.填写必要信息之记录信息优化

Step3.浏览提交文件记录网站

Step4.浏览具体文件信息

2.3 编辑文件

在指定的文件名处直接点击文件名连接,便可进入编辑界面:

Step1.点击文件名:

Step2.修改文件信息

假如咱们要加入一行文本信息:

继续填写提交记录日志信息:

Step3.浏览修改后的文件

2.4 删除文件

在指定的文件名处直接点击文件名连接,便可进入文件信息界面,点击删除按钮:

Step1.点击删除按钮

Step2.填写日志记录并点击Commit Changes

Step3.删除的文件不会出如今项目结构中,只能经过提交日志记录查看:

2.5 上传文件

在仓库主页点击Upload files按钮进入上传页面,选择要上传的文件,点击上传便可。注意:这里能够一次性上传多个文件。

2.6 搜索仓库文件

在仓库主页点击Find file按钮,便可进入搜索页面:

假如我要搜索log,因为项目中没有log文件,因此没有搜索结果:

2.7 下载/检出项目

在仓库主页点击Clone or download按钮,便可弹出下载提示框:

2.8 GitHub Issues

假如张三发现了李四的开源项目中存在一个bug,那么张三就能够为这个项目新建一个issue,咱们能够把它理解为项目的问题列表,参与这个项目的开发者们能够在问题列表中进行交流:

Step1.新建Issue

Step2.填写Issue信息,告知项目开发者

Step3.修复完成以后,能够回复Issue信息,告知提问者该Issue已修复

Step4.通常来讲会由提问者来Close这个Issue,固然也能够由项目拥有者来Close。

2.9 Fork 复制克隆一个开源项目

 假设我最近对StackExchange.Redis这个开源客户端项目很感兴趣,那么我能够Fork一下,看看有什么能够学习有什么能够优化的,我只须要点击Fork按钮,便可一秒创建一个Branch:

克隆以后,你的主页会多一个project,而且会注明forked from StackExchange.Redis

若是你在修改完善了部分代码以后以为你想把你的change融入到原有项目之中,让更多的人受益,那么你能够发起一个Pull Request:

点击以后,会显示全部你的修改,至关于你在提交以前review一下你的修改记录,这里我啥也没改,因此显示 There isn’t anything to compare.

当你commit你的change以后,原有项目的全部者就会在他的GitHub主页看到谁谁谁提交了他的代码,并会看到你的comment。

这时,他就能够看到你作的文件修改,并选择review你的代码,最后决定是否merge到他的原有项目之中。

好了,如今咱们来复习一下GitHub基本流程:

3、Git基本操做

3.1 安装Git

能够去官网选择下载,这里使用的是Git-2.9.0 64位版本:点我下载

全程傻瓜化安装,下一步便可,能够把命令模式和图形界面模式都勾选上。

3.2 Git基本流程

3.3 Git初始化操做及仓库管理

  这里咱们主要采用命令行模式,这也是Linux服务器的精髓所在,图形模式很easy,看看就会了。

  • 设置基本信息
    -- 设置用户名
    git config --global user.name 'zhangsan'
    -- 设置帐户邮箱
    git config --global user.email 'zhangsan@qq.com' 

    新建一个文件夹做为你的Git Workspace,而后打开Git Bash命令行界面:

     

  • 初始化一个新的Git仓库
    Step1.建立一个仓库文件夹,这里取名跟刚刚在GitHub里面同样的DataStructure.Demo.CSharp
    Step2.在文件内初始化Git(建立Git仓库)

    --初始化
    git init

    假设咱们写了一个MyArrayStack类,咱们把他copy到该文件夹中,使用如下命令加入到暂存区中:

    git add MyArrayStack.cs

    而后咱们须要将暂存区文件添加到仓库:

    git commit -m 'add MyArrayStack.cs'

    这时咱们再经过 git status 查看,你会发现已经没有什么文件更改或要提交的文件了。

  • 修改文件
    当你修改了文件以后,经过 git status 能够查看到你修改了什么东西,一样仍是要经历提交到暂存区再提交到仓库的步骤,此处再也不赘述。

     

  • 删除文件
    当你再也不想要某个代码文件时,你能够经过 git rm filename 的命令删除文件:

    git rm MyArrayStack.cs

     

3.4 使用Git管理远程仓库

咱们刚刚提到Git的基本流程是工做区到暂存区再到Git仓库,那么Git仓库和远程仓库又是如何联系起来的呢?

  • Git克隆操做:将远程仓库复制到本地
    git clone https://github.com/edisonchou/DataStructure.Demo.CSharp  

  • 修改代码,按照老步骤提交到Git仓库
    这里由于原始项目是啥也没有,因此我索性把我以前写的一个数据结构的Demo程序库直接拖动到了这个文件夹中。
    -- 添加全部文件
    git add --all 
    git status
    git commit -m 'add solution code' 

     

  • 远程推送:这时咱们已经提交到了git仓库,须要同步到github远程仓库了:

    git push
    -- 后面可能会要求你输入帐号和密码

    这时咱们再次进入GitHub主页,能够看到咱们的项目已经有刚刚同步的代码了:

 

  PS:若是出现git push错误,提示The requested URL returned error : 403 Forbidden while accessing.你能够输入用户名密码或者远程地址采用这种类型(vi.git/config)

  将[remote "orgin"] url=https://github.com/用户名/仓库名.git

  改成[remote "orgin"] url=https://github.com/用户名:密码@github.com/用户名/仓库名.git

4、GitHub Pages搭建网站

4.1 我的站点

  GitHub要求我的站点的仓库名称必须是 用户名.github.io, 例如edisonchou.github.io

  创建方法很简单,也是新建一个repository,而后填写你的我的站点名,例如 edisonchou.github.io。以后经过Git,你能够将你在本地开发的html网页同步到github,以后你就能够经过域名访问你的我的站点啦!

发布以后的我的站点以下:

4.2 项目站点

  搭建后的访问域名为:https://用户名.github.io/仓库名

  (1)进入项目主页,点击Settings

  (2)在Settings页面,点击Launch automatic page generator来自动生成主题页面

  (3)新建站点基础信息设置

  (4)选择主题

  (5)生成网页

参考资料

(1)GitHub-百度百科

(2)手把手教你最简单的开源项目托管

(3)怎么使用GitHub-知乎

(4)廖雪峰-Git教程

(5)杨晓辉-GitHub for Windows使用教程 => Windows下可使用GitHub for Windows工具进行操做,很方便!

转自:http://www.cnblogs.com/edisonchou/

相关文章
相关标签/搜索