收集整理的github学习资料

07-05 11:21:54   来源:互联网   评论: 点击:

网络上面已经有了那么多的关于git的文章,为什么还要弄一个repo来专门记录?网上的文章都是片面的,稍微全点的讲解的不够全面、深入,没能满足我对于文章的想象,所以决定自己来写。
这整个 repository 是关于分布式版本管理工具 Git 及托管商github 的使用,大部分都是网友写的内容,在这里只是做一个资源的汇总和合理的安排,希望能成为最好的学习 git 的资源,从开始入门使用,到慢慢的提高,再到理解各种原理,希望能够达成这个目标。

网络上面已经有了那么多的关于git的文章,为什么还要弄一个repo来专门记录?网上的文章都是片面的,稍微全点的讲解的不够全面、深入,没能满足我对于文章的想象,所以决定自己来写。

怎么写? 每个介绍的后面都应该有一些实践练习,有原理的部分,也应该有实践,手把手教学,这样子才能适合初学来快速上手学习。

如果你要有一些资源,希望和我一起,把这个搞起来,很简单, fork-修改-pull request 就ok。

入门介绍资料

git 客户端

mac和linux系统推荐使用终端即可,git一开始的命令的确很多,别无它法,熟能生巧,多练习即可能够掌握日常使用的一些名利,再配合 常用命令的alias 或者强大的zsh 都能显著的提升效率,当然如果非得寻找图形化客户端,也不是没有;windows下还是尽快熟悉客户端的使用吧,因为win下面的bash太难用了:

  • GUI Clients 官方推荐图形客户端,罗列的包括了Mac、windows、linux下的客户端,免费及付费的都有,你可以在这里面挑选一个就ok。
  • git for windows 针对window系统发布的客户端,集成了shell窗口,方便在win下面使用命令操作。
  • TortoiseGit - The coolest Interface to Git Version Control 在window下使用git,那就不得不提“乌龟”,安装了tortoise后,右键图形化操作根本分辨不出来哪是git,哪是SVN,很方便使用SVN的用户过度过来。
  • Tower2 号称最好的git客户端,只有Mac版本,收费,集成github、gitlab、Xcode等服务。
  • SourceTree 免费,功能齐全,Mac+window版本,集成github等服务。

git branch

  • A successful Git branching model 介绍日常推荐的分支开发模型,基于此模型可以通过这个小游戏来进行学习 Learn Git Branch
  • git工作流指南完整的对比目前使用的集中式(svn)工作流、功能分支工作流、gitflow工作流、forking工作流、pull request 等几种不同的模式,通俗易懂,强烈推荐看一看,如果觉的排版不好,请查看原分页文章 git-workflow-translations
  • 熟悉的工作流后,你是否也想要在github上与他人一起协同工作?那么问题来了,Github全程指南-如何高效使用?

git expert

git 书籍

  • Pro Git 作者Scott Chacon是github的员工,git的布道者,这本书被誉为git学习圣经,中间有好多插图描述的浅显易懂,挺适合详细学习下的,最新英文第二版《pro git (Editon 2) 》;
  • git-internals-pdf 老外写的,很给力,蒋鑫推荐,从目录上面包括安装使用以及设计原理都有讲解,有机会看看。pdf电子版本直接下载地址git-internals.pdf
  • Git Community Book 汇聚了Git社区的很多精华, 并对git的对象模型原理等做了解释,可以深入的了解下git原理。pdf电子版本直接下载地址 Git Community Book.pdf

git 效率提升

  • git flow 工具
  • git flow 中文备忘清单
  • 一个很有意思的学习 git 的小游戏 http://pcottle.github.io/learnGitBranching/
  • git completion 终端 git 命令的 Tab 键补全功能,比如打开终端,输入 git che ,按 Tab 键,则会出现 check-attr\check-ignore\checkout 等等的选项,支持bash、zsh等shell,使用方法(以bash shell为例):下载链接中相应的版本到用户目录下,修改 ~/.bashrc 文件 ,加入 source ~/git-completion.bash ,使得每次打开终端时都执行一次 git-completion.bash 脚本,来完成git 命令的 Tab 补全。或者采用这种方法 Quick Tip: Autocomplete Git Commands and Branch Names in Bash
  • .gitignore template 各种语言、各种编辑器的 .gitignore 文件模板,当你进行某些语言的开发时候,直接使用相应的模板即可,省去自己写的时间(还不全),当然你也可以去贡献自己的模板,不知道 .gitignore ? 简单讲就是不让git跟踪某些文件,详情阅读: http://git-scm.com/docs/gitignore PS:推荐使用.gitignore_global 文件进行全局过滤,比如mac下的 .DS_Store 文件,省去在每个repo下进行设置 .gitignore 文件了。全局模板参考:https://github.com/github/gitignore/tree/master/Global

相关热词搜索:github 版本管理

上一篇:8 个 git 的小技巧 下一篇:使用 MPTCP 增加对 github 的带宽
分享到: 收藏