GitHub入门与实践笔记.md

1.1 什么是 GitHub

  GitHub 是为开发者提供 Git 仓库的托管服务。这是一个让开发者与朋友、同事、同学及陌生人共享代码的完美场所。

1.1.5 使用GitHub前配置


  使用git命令生成一个SSH key 

      $ ssh-keygen -t rsa -C  "your_email@example.com"

  查看生成的key使用命令 

      $ cat ~/.ssh/id_rsa.pub 

   然后在gitHub用户配置Account settings里加入,测试是否配置成功

      $ ssh -T git@github.com

1.2 git是什么

Git是分散性版本管理系统.

   集中型与分散型区别

    Svn将仓库集中存放在服务器之中,所以只存在一个仓库。这种版本管理系统会被称作集中型,集中性便于管理.

    SVN一旦服务器无法连接,开发就无法协作. 由于所有人提交都在主干容易冲突,SVN创建分支是复制一份文件,而Git是克隆一份配置,SVN切换分支很慢,git瞬间完成

    Git将仓库Fork出来,仓库存放在本地,Git可以不依赖网络,所有用户Fork出来的仓库可以互相pull和push, Git的主干master也是分支只是不用于开发,作为稳定提交版本。

1.3 Git基本操作

初始化一个仓库:
    $ mkdir  git-tutorial  
    $ cd  git-tutorial
    $ git init
查看文件状态:
    $ git status
把新建的文件加入缓存区
    $ git add ReadMe.md//让文件成为 Git 仓库的管理对象
    $ git add .   //提交所有未追踪的文件
提交文件:
    $ git  commit//git commit进入编辑器填写提交信息退出编辑器  
                   按ESC键,以确保您不在编辑模式,然后键入:wq
    $ git  commit  -m  "test commit"//test commit 提交信息
    $ git commit  -am "Add feature-D"  //可以省略add
    $ git  commit  --amend  //修改刚提交的信息
查看提交日志:
    $ git log //只能查看当前状态为终点的日志
    $ git reflog //查看当前仓库所有操作日志     就算回退到2版本 也还可以查看到3    回滚错误时
    $ git log --graph //图表可以很清楚查看合并,创建
    $ git log --perrty=short //只显示提交信息的第一行
    $ git log ReadMe.md  //只显示指定目录、文件的日志
    $ git log -p //显示文件的前后差别
    $ git log -p  ReadMe.md //指定文件前后差别
更改前后区别:
    $ git diff  //查看当前工作树与暂存区的差别。  如果工作树和暂存区的状态并无差别,结果什么都不会显示
    $ git diff HEAD //查看最新提交与上次提交区别
分支操作:
    $ git branch  //查看所有分支
    $ git branch -a //-a参数可以同时显示本地仓库和远程仓库的分支信息  
    $ git checkout -b  feature-A  //创建并且切换到feature-A分支
    $ git branch -d feature-A //删除feature-A分支
    $ git checkout master //切换master分支
    $ git merge  --no-ff feature-A//将featurea-A分支合并到当前分支
更改提交操作:
    $ git reset --hard 83d261f168a0c17c83be9d727fc6c3a883457143//回退版本到创建featura-A前
压缩提交历史:
    $ git rebase  -i  HEAD~2 //把最近2次历史 压缩为一次  编辑器中把要压缩的Pick改为 fixup
推送到远程仓库:
    $ git remote -v //查看设置的远程地址
    $ git remote rm upstream  //删除一个远程地址
    $ git remote add tutorialGitHub git@github.com:vicococ/git-tutorial.git  //创建一个远程地址 名称为tutorialGitHub
    $ git push -u tutorialGitHub master  //把本地的master分支推送到远程master分支
                   -u参数可以在推送的同时,将 tutorialGitHub 仓库的 master 分支设置为本地仓库当前分支的 upstream(上游),
                                                                        这样后面就可以不加任何参数使用git push。 
                   git pull从远程获取内容时。可以省略主机名,本地仓库当前分支就可以直接从 tutorialGitHub 的 master 分支获取内容,

远程仓库获取:  
    $ git clone  git@github.com:vicococ/git-tutorial.git //获取一个github项目  支持多种协议,除了HTTP(s)以外,还支持SSH、git各种协议
    $ git clone -o tutorial git@github.com:vicococ/git-tutorial.git   获取并命名仓库为tutorial
    $ git checkout -b feature-D origin/feature-D //获取远程仓库的feature-D项目  克隆版本库的时候,
                                                   所使用的远程仓库自动被Git命名为origin。如果想用其他的主机名,需要用git clone命令的-o选项指定。
    $ git push//推送代码 无需加参数
获取最新数据:
    $ git pull  tutorialGitHub  feature-D //获取 feature-D分支 与 当前分支合并
    $ git pull  tutorialGitHub feature-D:master  //获取tutorialGitHub主机feature-D分支和本地的master分支合并
将fork的分支获取原分支最新数据:
    $ git remote add upstream https://github.com/ituring/first-pr.git //设置原分支主机
    $ git fetch upstream gh-pages:latestCode//获取远程分支gh-pages到本地创建一个latestCode分支
    $ git merge latestCode  //合并latestCode分支到master
第二种方式:
      $ git fetch upstream gh-pages //获取远程的 gh-pages分支
    $ git merge upstream/gh-pages //和当前分支合并
pull和fetch的区别 
    git fetch:相当于是从远程获取最新版本到本地,不会自动merge,pull会自动merge  多人协作用fetch  
相关推荐
本书从Git的基本知识和操作方法入手,详细介绍了GitHub的各种功能,GitHub与其他工具或服务的集成,使用GitHub的开发流程以及如何将GitHub引入到企业中。在讲解GitHub 的代表功能Pull Request 时,本书专门搭建了供各位读者实践的仓库,邀请各位读者进行Pull Request 并共同维护。本书旨在指导各位读者如何在开发现场使用GitHub进行高效开发,适合所有想要使用GitHub进行开发的程序员或团队阅读。 第1章 欢迎来到GitHub的世界  1 1.1 什么是GitHub  2 GitHub公司与octocat  2 并不只是Git仓库的托管服务  3 GitHub的使用情况  3 Column 专栏:GitHubGit的区别  4 1.2 使用GitHub会带来哪些变化  4 协作形式变化  4 在开发者之间引发化学反应的Pull Request  5 对特定用户进行评论  6 GitHub Flavored Markdown  7 Column 专栏:还可以这样写!!  7 能看到更多其他团队的软件  7 与开源软件相同的开发模式  8 1.3 社会化编程  9 1.4 为什么需要社会化编程  10 不要闭目塞听,要接触不同的文化  10 会写代码的程序员更受青睐  11 GitHub最大的特征是“面向人”  11 1.5 GitHub提供的主要功能  12 Git仓库  12 Organization  12 Issue  13 Wiki  13 Pull Request  13 Column 专栏:GitHub上受到瞩目的软件  14 1.6 小结  14 参考资料  14 第2章 Git的导入  17 2.1 诞生背景  18 2.2 什么是版本管理  18 集中型与分散型  19 集中型  19 分散型  19 集中型与分散型哪个更好  20 2.3 安装  21 Mac与Linux  21 Windows  21 组件的选择  22 设置环境变量  22 换行符的处理  23 Git Bash  23 本书所用的环境  24 2.4 初始设置  24 设置姓名和邮箱地址  24 提高命令输出的可读性  25 2.5 小结  25 第3章 使用GitHub的前期准备  27 3.1 使用前的准备  28 创建账户  28 设置头像  29 设置SSH Key  29 添加公开密钥  30 使用社区功能  31 3.2 实际动手使用  31 创建仓库  31 Repository name  32 Description  32 Public、Private  32 Initialize this repository with a README  32 Add .gitignore  33 Add a license  33 连接仓库  33 README.md  33 GitHub Flavored Markdown  34 公开代码  34 clone已有仓库  34 编写代码  35 提交  36 Column 专栏:公开时的许可协议  37 进行push  37 3.3 小结  38 第4章 通过实际操作学习Git  39 4.1 基本操作  40 git init——初始化仓库  40 git status——查看仓库的状态  40 git add——向暂存区中添加文件  41 git commit——保存仓库的历史记录  42 记述一行提交信息  42 记述详细提交信息  42 中止提交  43 查看提交后的状态  43 git log——查看提交日志  43 只显示提交信息的第一行  44 只显示指定目录、文件的日志  44 显示文件的改动  45 git diff——查看更改前后的差别  45 查看工作树和暂存区的差别  45 查看工作树和最新提交的差别  46 4.2 分支的操作  47 git branch——显示分支一览表  48 git checkout -b——创建、切换分支  48 切换到feature-A分支并进行提交  48 切换到master分支  49 切换回上一个分支  50 特性分支  50 主干分支  51 git merge——合并分支  51 git log --graph——以图表形式查看分支  52 4.3 更改提交的操作  53 git reset——回溯历史版本  53 回溯到创建feature-A分支前  53 创建fix-B分支  54 推进至feature-A分支合并后的状态  55 消除冲突  56 查看冲突部分并将其解决  57 提交解决后的结果  57 git commit --amend——修改提交信息  58 git rebase -i——压缩历史  59 创建feature-C分支  59 修正拼写错误  60 更改历史  61 合并至master分支  63 4.4 推送至远程仓库  63 git remote add——添加远程仓库  64 git push——推送至远程仓库  64 推送至master分支  64 推送至master以外的分支  65 4.5 从远程仓库获取  65 git clone——获取远程仓库  65 获取远程仓库  65 获取远程的feature-D分支  66 向本地的feature-D分支提交更改  67 推送feature-D分支  67 git pull——获取最新的远程仓库分支  67 4.6 帮助大家深入理解Git的资料  68 Pro Git  68 LearnGitBranching  69 tryGit  69 4.7 小结  70 第5章 详细解说GitHub的功能  71 5.1 键盘快捷键  72 5.2 工具栏  73 关于UI  73 1LOGO  73 2Notifications  73 3 搜索窗口  73 4Explore  73 5Gist  74 6Blog  74 7Help  74 8 头像、用户名  74 9 Create a new  74 Account settings  75 Sign out  75 5.3 控制面板  75 关于UI  75 ①News Feed  76 ②Pull Requests  76 ③Issues  76 ④Stars  76 ⑤Broadcast  76 ⑥Repositories you contribute to  76 ⑦Your Repositories  76 5.4 个人信息  77 关于UI  77 1 用户信息  77 2Popular Repositories  78 3Repositories contributed to  78 4Public contributions  78 5Contribution Activity  78 6Repositories  78 7Public Activity  79 5.5 仓库  80 关于UI  80 ①用户名(组织名)/仓库名  80 ②Watch/Star/Fork  80 ③Code  81 ④Issue  81 ⑤Pull Requests  81 ⑥Wiki  82 ⑦Pulse  82 ⑧Graphs  82 ⑨Network  82 ⑩Settings  82 ⑪SSH clone URL  82 ⑫Clone in Desktop  82 ⑬Download ZIP  83 acommits  83 bbranches  83 creleases  83 dcontributors  83 eCompare & review  83 fbranch  83 gpath  84 hFork this project and Create a new file  84 ifiles  84 文件的相关操作  84 Column专栏:通过部分名称搜索文件  85 查看差别  85 查看分支间的差别  85 查看与几天前的差别  86 查看与指定日期之间的差别  87 5.6 Issue  87 简洁且表现力丰富的描述方法  88 语法高亮  89 添加图片  90 添加标签以便整理  90 添加里程碑以便管理  91 Column 专栏:了解贡献时的规则!  92 Tasklist语法  92 通过提交信息操作Issue  93 在相关Issue中显示提交  93 Close Issue  93 将特定的Issue转换为Pull Request  94 5.7 Pull Request  94 Column 专栏:获取diff格式与patch格式的文件  96 Conversation  96 Column 专栏:引用评论  96 Commits  97 Column 专栏:在评论中应用表情  98 Files Changed  98 5.8 Wiki  99 Pages  100 History  101 Column 专栏:在Wiki中显示侧边栏  101 5.9 Pulse  102 active pull requests  103 active issue  103 commits  104 Releases published  104 Unresolved Conversations  104 5.10 Graphs  105 Contributors  105 Commit Activity  106 Code Frequency  106 Punchcard  108 5.11 Network  108 5.12 Settings  109 Options  109 ①Settings  109 ②Features  110 ③GitHub Pages  111 ④Danger Zone  111 Collaborators  111 Webhooks & Services  112 Deploy Keys  112 5.13 Notifications  112 5.14 其他功能  114 GitHub Pages  114 GitHub Jobs  114 GitHub Enterprise  114 GitHub API  115 5.15 小结  115 Column 专栏:在Mac的通知中心查看GitHub的Notifications  115 第6章 尝试Pull Request  117 6.1 Pull Request的概要  118 什么是Pull Request  118 Pull Request的流程  118 6.2 发送Pull Request前的准备  119 查看要修正的源代码  120 Fork  120 clone  120 branch  121 为何要在特性分支中进行作业  121 确认分支  121 创建特性分支  121 添加代码  122 提交修改  122 创建远程分支  123 6.3 发送Pull Request  123 6.4 让Pull Request更加有效的方法  126 在开发过程中发送Pull Request进行讨论  126 明确标出“正在开发过程中”  127 不进行Fork直接从分支发送Pull Request  128 6.5 仓库的维护  128 仓库的Fork与clone  129 给原仓库设置名称  129 获取最新数据  130 6.6 小结  130 第7章 接收Pull Request  131 7.1 采纳Pull Request的方法  132 7.2 采纳Pull Request前的准备  133 代码审查  133 查看图片的差别  134 2-up  134 Swipe  135 Onion Skin  135 Difference  136 在本地开发环境中反映Pull Request的内容  136 将接收方的本地仓库更新至最新状态  136 获取发送方的远程仓库  137 创建用于检查的分支  138 合并  138 删除分支  139 Column 专栏:如何提升代码管理技术  139 7.3 采纳Pull Request  139 合并到主分支  140 push修改内容  141 7.4 小结  142 Column 专栏:请协助我们共同创建互相学习的场所  142 第8章 与GitHub相互协作的工具及服务  143 8.1 hub命令  144 概要  144 安装  144 安装  145 确认运行情况  145 设置别名  145 实现shell上的功能补全  146 ~/.config/hub  146 命令  146 hub clone  146 hub remote add  147 hub fetch  147 hub cherry-pick  147 hub fork  148 hub pull-request  148 hub checkout  148 hub create  149 hub push  149 hub browse  150 hub compare  150 Column 专栏:让GitHub Enterprise支持hub命令  151 8.2 Travis CI  151 概要  151 实际尝试  152 编写配置文件  152 检测配置文件是否有问题  152 与GitHub集成  153 将Travis CI的结果添加至README.md  155 8.3 Coveralls  156 概要  156 安装  157 注册  157 添加对象仓库  158 编写配置文件  158 添加gem  159 查看报告  160 8.4 Gemnasium  160 8.5 Code Climate  161 8.6 Jenkins  162 概要  162 安装  164 创建bot账户  165 bot账户的权限设置  165 对象为个人账户时  165 对象为Organization账户时  165 检查设置  167 给Jenkins设置SSH密钥  167 初次使用Jenkins时  167 已经在使用Jenkins时  168 GitHub pull request builder plugin的安装  169 Git plugin的设置  170 Github Pull Requests Builder的设置  170 Github server api URL  171 Access Token  171 Admin list  172 job的创建与设置  172 GitHub project  172 源码管理  172 构建触发器  173 构建  174 通知结果  174 测试执行中的状态  175 Failed  175 All is well  175 commit status  175 通过评论进行控制  176 执行任务  176 添加至White list  176 重新执行任务  176 变更指定评论  177 8.7 小结  177 Column 专栏:用Coderwall生成GitHub上的个人信息  178 第9章 使用GitHub的开发流程  179 9.1 团队使用GitHub时的注意事项  180 一切从简  180 项目管理工具与GitHub的区别  180 项目管理工具与GitHub相异的原因  181 不Fork仓库的方法  182 9.2 GitHub Flow——以部署为中心的开发模式  183 9.3 GitHub Flow的流程  184 随时部署,没有发布的概念  184 进行新的作业时要从master分支创建新分支  185 在新创建的分支中进行提交  186 定期push  186 使用Pull Request  187 务必让其他开发者进行审查  187 合并后立刻部署  187 9.4 实践GitHub Flow的前提条件  188 部署作业完全自动化  188 使用部署工具  189 通过Web界面进行部署的工具  189 导入开发时的注意事项  190 重视测试  190 让测试自动化  190 编写测试代码,通过全部测试  190 维护测试代码  190 9.5 模拟体验GitHub Flow  191 Fizzbuzz的说明  191 添加新功能  192 创建新的分支  192 如果尚未clone仓库  192 如果之前clone过仓库  193 创建特性分支  193 实现新功能  194 创建Pull Request  196 接收反馈  196 修正缩进  197 添加测试  199 培育Pull Request  202 Pull Request被合并  202 9.6 团队实践GitHub Flow时的几点建议  203 减小Pull Request的体积  204 准备可供试运行的环境  204 不要让Pull Request中有太多反馈  205 不要积攒Pull Request  206 9.7 GitHub Flow的小结  206 9.8 Git Flow——以发布为中心的开发模式  207 便于理解的标准流程  207 有时显得过于复杂  209 9.9 导入Git Flow前的准备  209 安装git-flow  209 Mac下的安装  209 Linux下的安装  210 确认运行状况  210 仓库的初始设置  210 创建仓库  210 进行git flow的初始设置  211 在远程仓库中也创建develop分支  212 9.10 模拟体验Git Flow  212 master分支与develop分支的区别  213 master分支  213 develop分支  213 在feature中进行的工作  213 创建分支  214 在分支中进行作业  215 发送Pull Request  216 通过代码审查提高代码质量  217 更新本地的develop分支  219 在release分支中进行的工作  220 Column 专栏:设置默认分支  220 创建分支  221 分支内的工作  222 进行发布与合并  222 查看版本标签  224 更新到远程仓库  225 在hotfix分支中进行的工作  226 创建分支  226 创建标签和进行发布  228 从hotfix分支合并至develop分支  230 9.11 Git Flow的小结  232 Column 专栏:版本号的分配规则  232 第10章 将GitHub应用到企业  233 10.1 将世界标准的开发环境引入企业现场  234 企业引入GitHub的好处  234 使用Organization  235 确认Github的安全性  235 注意维护时间  235 查看故障信息  236 10.2 GitHub Enterprise  237 概述  238 引入的好处  238 引入的弊端  239 适合引入GitHub Enterprise的几种情况  239 源代码不可外传  239 Column 专栏:将GitHub的仓库作为Subversion仓库使用  240 希望维护与故障时间可控  240 10.3 能实现Git托管的软件  241 Column 专栏:Bitbucket  241 10.4 小结  242 附录A 支持GitHub的GUI客户端  243 A.1 GitHub for Mac,GitHub for Windows  244 A.2 SourceTree  246 附录B 通过Gist轻松实现代码共享  247 B.1 Gist的特点  248 B.2 创建Gist  248 UI讲解  249 1 Gist description  249 2 name this file    249 3 language  250 4 ACE Editor   250 5 文件  250 6 Add another File  251 7 Create Secret Gist  251 8 Create Public Gist  251 B.3 查看Gist  252 Gist 的菜单  252 ①Gist Detail  253 ②Revisions  253 ③Download Gist  253 ④Clone this gist  253 ⑤Embed this gist  253 ⑥Link to this gist   253 文件的菜单   254 B.4 Your Gists   254 B.5 小结  255
内容简介 · · · · · · 本书从Git的基本知识和操作方法入手,详细介绍了GitHub的各种功能,GitHub与其他工具或服务的协作,使用GitHub的开发流程以及如何将GitHub引入到企业中。在讲解GitHub的代表功能Pull Request时,本书专门搭建了供各位读者实践的仓库,邀请各位读者进行Pull Request并共同维护。 作者简介 · · · · · · 大塚弘记 将敏捷软件开发导入开发现场的领军人物,以顾问身份就Web应用的开发及服务指导过多家企业和团队。曾为多家企业和团队导入GitHub,在建立一天之内多次部署的开发体制方面拥有丰富经验。 目录 · · · · · · 第1章 欢迎来到GitHub的世界  1 1.1 什么是GitHub  2 GitHub公司与octocat  2 并不只是Git仓库的托管服务  3 GitHub的使用情况  3 Column 专栏:GitHubGit的区别  4 1.2 使用GitHub会带来哪些变化  4 协作形式变化  4 在开发者之间引发化学反应的Pull Request  5 对特定用户进行评论  6 GitHub Flavored Markdown  7 Column 专栏:还可以这样写!!  7 能看到更多其他团队的软件  7 与开源软件相同的开发模式  8 1.3 社会化编程  9 1.4 为什么需要社会化编程  10 不要闭目塞听,要接触不同的文化  10 会写代码的程序员更受青睐  11 GitHub最大的特征是“面向人”  11 1.5 GitHub提供的主要功能  12 Git仓库  12 Organization  12 Issue  13 Wiki  13 Pull Request  13 Column 专栏:GitHub上受到瞩目的软件  14 1.6 小结  14 参考资料  14 第2章 Git的导入  17 2.1 诞生背景  18 2.2 什么是版本管理  18 集中型与分散型  19 集中型  19 分散型  19 集中型与分散型哪个更好  20 2.3 安装  21 Mac与Linux  21 Windows  21 组件的选择  22 设置环境变量  22 换行符的处理  23 Git Bash  23 本书所用的环境  24 2.4 初始设置  24 设置姓名和邮箱地址  24 提高命令输出的可读性  25 2.5 小结  25 第3章 使用GitHub的前期准备  27 3.1 使用前的准备  28 创建账户  28 设置头像  29 设置SSH Key  29 添加公开密钥  30 使用社区功能  31 3.2 实际动手使用  31 创建仓库  31 Repository name  32 Description  32 Public、Private  32 Initialize this repository with a README  32 Add .gitignore  33 Add a license  33 连接仓库  33 README.md  33 GitHub Flavored Markdown  34 公开代码  34 clone已有仓库  34 编写代码  35 提交  36 Column 专栏:公开时的许可协议  37 进行push  37 3.3 小结  38 第4章 通过实际操作学习Git  39 4.1 基本操作  40 git init——初始化仓库  40 git status——查看仓库的状态  40 git add——向暂存区中添加文件  41 git commit——保存仓库的历史记录  42 记述一行提交信息  42 记述详细提交信息  42 中止提交  43 查看提交后的状态  43 git log——查看提交日志  43 只显示提交信息的第一行  44 只显示指定目录、文件的日志  44 显示文件的改动  45 git diff——查看更改前后的差别  45 查看工作树和暂存区的差别  45 查看工作树和最新提交的差别  46 4.2 分支的操作  47 git branch——显示分支一览表  48 git checkout -b——创建、切换分支  48 切换到feature-A分支并进行提交  48 切换到master分支  49 切换回上一个分支  50 特性分支  50 主干分支  51 git merge——合并分支  51 git log --graph——以图表形式查看分支  52 4.3 更改提交的操作  53 git reset——回溯历史版本  53 回溯到创建feature-A分支前  53 创建fix-B分支  54 推进至feature-A分支合并后的状态  55 消除冲突  56 查看冲突部分并将其解决  57 提交解决后的结果  57 git commit --amend——修改提交信息  58 git rebase -i——压缩历史  59 创建feature-C分支  59 修正拼写错误  60 更改历史  61 合并至master分支  63 4.4 推送至远程仓库  63 git remote add——添加远程仓库  64 git push——推送至远程仓库  64 推送至master分支  64 推送至master以外的分支  65 4.5 从远程仓库获取  65 git clone——获取远程仓库  65 获取远程仓库  65 获取远程的feature-D分支  66 向本地的feature-D分支提交更改  67 推送feature-D分支  67 git pull——获取最新的远程仓库分支  67 4.6 帮助大家深入理解Git的资料  68 Pro Git  68 LearnGitBranching  69 tryGit  69 4.7 小结  70 第5章 详细解说GitHub的功能  71 5.1 键盘快捷键  72 5.2 工具栏  73 关于UI  73 1LOGO  73 2Notifications  73 3 搜索窗口  73 4Explore  73 5Gist  74 6Blog  74 7Help  74 8 头像、用户名  74 9 Create a new  74 Account settings  75 Sign out  75 5.3 控制面板  75 关于UI  75 ①News Feed  76 ②Pull Requests  76 ③Issues  76 ④Stars  76 ⑤Broadcast  76 ⑥Repositories you contribute to  76 ⑦Your Repositories  76 5.4 个人信息  77 关于UI  77 1 用户信息  77 2Popular Repositories  78 3Repositories contributed to  78 4Public contributions  78 5Contribution Activity  78 6Repositories  78 7Public Activity  79 5.5 仓库  80 关于UI  80 ①用户名(组织名)/仓库名  80 ②Watch/Star/Fork  80 ③Code  81 ④Issue  81 ⑤Pull Requests  81 ⑥Wiki  82 ⑦Pulse  82 ⑧Graphs  82 ⑨Network  82 ⑩Settings  82 ⑪SSH clone URL  82 ⑫Clone in Desktop  82 ⑬Download ZIP  83 acommits  83 bbranches  83 creleases  83 dcontributors  83 eCompare & review  83 fbranch  83 gpath  84 hFork this project and Create a new file  84 ifiles  84 文件的相关操作  84 Column专栏:通过部分名称搜索文件  85 查看差别  85 查看分支间的差别  85 查看与几天前的差别  86 查看与指定日期之间的差别  87 5.6 Issue  87 简洁且表现力丰富的描述方法  88 语法高亮  89 添加图片  90 添加标签以便整理  90 添加里程碑以便管理  91 Column 专栏:了解贡献时的规则!  92 Tasklist语法  92 通过提交信息操作Issue  93 在相关Issue中显示提交  93 Close Issue  93 将特定的Issue转换为Pull Request  94 5.7 Pull Request  94 Column 专栏:获取diff格式与patch格式的文件  96 Conversation  96 Column 专栏:引用评论  96 Commits  97 Column 专栏:在评论中应用表情  98 Files Changed  98 5.8 Wiki  99 Pages  100 History  101 Column 专栏:在Wiki中显示侧边栏  101 5.9 Pulse  102 active pull requests  103 active issue  103 commits  104 Releases published  104 Unresolved Conversations  104 5.10 Graphs  105 Contributors  105 Commit Activity  106 Code Frequency  106 Punchcard  108 5.11 Network  108 5.12 Settings  109 Options  109 ①Settings  109 ②Features  110 ③GitHub Pages  111 ④Danger Zone  111 Collaborators  111 Webhooks & Services  112 Deploy Keys  112 5.13 Notifications  112 5.14 其他功能  114 GitHub Pages  114 GitHub Jobs  114 GitHub Enterprise  114 GitHub API  115 5.15 小结  115 Column 专栏:在Mac的通知中心查看GitHub的Notifications  115 第6章 尝试Pull Request  117 6.1 Pull Request的概要  118 什么是Pull Request  118 Pull Request的流程  118 6.2 发送Pull Request前的准备  119 查看要修正的源代码  120 Fork  120 clone  120 branch  121 为何要在特性分支中进行作业  121 确认分支  121 创建特性分支  121 添加代码  122 提交修改  122 创建远程分支  123 6.3 发送Pull Request  123 6.4 让Pull Request更加有效的方法  126 在开发过程中发送Pull Request进行讨论  126 明确标出“正在开发过程中”  127 不进行Fork直接从分支发送Pull Request  128 6.5 仓库的维护  128 仓库的Fork与clone  129 给原仓库设置名称  129 获取最新数据  130 6.6 小结  130 第7章 接收Pull Request  131 7.1 采纳Pull Request的方法  132 7.2 采纳Pull Request前的准备  133 代码审查  133 查看图片的差别  134 2-up  134 Swipe  135 Onion Skin  135 Difference  136 在本地开发环境中反映Pull Request的内容  136 将接收方的本地仓库更新至最新状态  136 获取发送方的远程仓库  137 创建用于检查的分支  138 合并  138 删除分支  139 Column 专栏:如何提升代码管理技术  139 7.3 采纳Pull Request  139 合并到主分支  140 push修改内容  141 7.4 小结  142 Column 专栏:请协助我们共同创建互相学习的场所  142 第8章 与GitHub相互协作的工具及服务  143 8.1 hub命令  144 概要  144 安装  144 安装  145 确认运行情况  145 设置别名  145 实现shell上的功能补全  146 ~/.config/hub  146 命令  146 hub clone  146 hub remote add  147 hub fetch  147 hub cherry-pick  147 hub fork  148 hub pull-request  148 hub checkout  148 hub create  149 hub push  149 hub browse  150 hub compare  150 Column 专栏:让GitHub Enterprise支持hub命令  151 8.2 Travis CI  151 概要  151 实际尝试  152 编写配置文件  152 检测配置文件是否有问题  152 与GitHub集成  153 将Travis CI的结果添加至README.md  155 8.3 Coveralls  156 概要  156 安装  157 注册  157 添加对象仓库  158 编写配置文件  158 添加gem  159 查看报告  160 8.4 Gemnasium  160 8.5 Code Climate  161 8.6 Jenkins  162 概要  162 安装  164 创建bot账户  165 bot账户的权限设置  165 对象为个人账户时  165 对象为Organization账户时  165 检查设置  167 给Jenkins设置SSH密钥  167 初次使用Jenkins时  167 已经在使用Jenkins时  168 GitHub pull request builder plugin的安装  169 Git plugin的设置  170 Github Pull Requests Builder的设置  170 Github server api URL  171 Access Token  171 Admin list  172 job的创建与设置  172 GitHub project  172 源码管理  172 构建触发器  173 构建  174 通知结果  174 测试执行中的状态  175 Failed  175 All is well  175 commit status  175 通过评论进行控制  176 执行任务  176 添加至White list  176 重新执行任务  176 变更指定评论  177 8.7 小结  177 Column 专栏:用Coderwall生成GitHub上的个人信息  178 第9章 使用GitHub的开发流程  179 9.1 团队使用GitHub时的注意事项  180 一切从简  180 项目管理工具与GitHub的区别  180 项目管理工具与GitHub相异的原因  181 不Fork仓库的方法  182 9.2 GitHub Flow——以部署为中心的开发模式  183 9.3 GitHub Flow的流程  184 随时部署,没有发布的概念  184 进行新的作业时要从master分支创建新分支  185 在新创建的分支中进行提交  186 定期push  186 使用Pull Request  187 务必让其他开发者进行审查  187 合并后立刻部署  187 9.4 实践GitHub Flow的前提条件  188 部署作业完全自动化  188 使用部署工具  189 通过Web界面进行部署的工具  189 导入开发时的注意事项  190 重视测试  190 让测试自动化  190 编写测试代码,通过全部测试  190 维护测试代码  190 9.5 模拟体验GitHub Flow  191 Fizzbuzz的说明  191 添加新功能  192 创建新的分支  192 如果尚未clone仓库  192 如果之前clone过仓库  193 创建特性分支  193 实现新功能  194 创建Pull Request  196 接收反馈  196 修正缩进  197 添加测试  199 培育Pull Request  202 Pull Request被合并  202 9.6 团队实践GitHub Flow时的几点建议  203 减小Pull Request的体积  204 准备可供试运行的环境  204 不要让Pull Request中有太多反馈  205 不要积攒Pull Request  206 9.7 GitHub Flow的小结  206 9.8 Git Flow——以发布为中心的开发模式  207 便于理解的标准流程  207 有时显得过于复杂  209 9.9 导入Git Flow前的准备  209 安装git-flow  209 Mac下的安装  209 Linux下的安装  210 确认运行状况  210 仓库的初始设置  210 创建仓库  210 进行git flow的初始设置  211 在远程仓库中也创建develop分支  212 9.10 模拟体验Git Flow  212 master分支与develop分支的区别  213 master分支  213 develop分支  213 在feature中进行的工作  213 创建分支  214 在分支中进行作业  215 发送Pull Request  216 通过代码审查提高代码质量  217 更新本地的develop分支  219 在release分支中进行的工作  220 Column 专栏:设置默认分支  220 创建分支  221 分支内的工作  222 进行发布与合并  222 查看版本标签  224 更新到远程仓库  225 在hotfix分支中进行的工作  226 创建分支  226 创建标签和进行发布  228 从hotfix分支合并至develop分支  230 9.11 Git Flow的小结  232 Column 专栏:版本号的分配规则  232 第10章 将GitHub应用到企业  233 10.1 将世界标准的开发环境引入企业现场  234 企业引入GitHub的好处  234 使用Organization  235 确认Github的安全性  235 注意维护时间  235 查看故障信息  236 10.2 GitHub Enterprise  237 概述  238 引入的好处  238 引入的弊端  239 适合引入GitHub Enterprise的几种情况  239 源代码不可外传  239 Column 专栏:将GitHub的仓库作为Subversion仓库使用  240 希望维护与故障时间可控  240 10.3 能实现Git托管的软件  241 Column 专栏:Bitbucket  241 10.4 小结  242 附录A 支持GitHub的GUI客户端  243 A.1 GitHub for Mac,GitHub for Windows  244 A.2 SourceTree  246 附录B 通过Gist轻松实现代码共享  247 B.1 Gist的特点  248 B.2 创建Gist  248 UI讲解  249 1 Gist description  249 2 name this file    249 3 language  250 4 ACE Editor   250 5 文件  250 6 Add another File  251 7 Create Secret Gist  251 8 Create Public Gist  251 B.3 查看Gist  252 Gist 的菜单  252 ①Gist Detail  253 ②Revisions  253 ③Download Gist  253 ④Clone this gist  253 ⑤Embed this gist  253 ⑥Link to this gist   253 文件的菜单   254 B.4 Your Gists   254 B.5 小结  255
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页