├── index.html
├── README.md
├── images
├── pomelo.png
├── django-uuslug.png
├── flask-mongodb.png
├── mezzanine-bug.png
├── sequelize-typos.png
├── page-speed-issues.png
├── add-language-support.png
├── auto-save-zh-issue.png
├── remove-unused-libs.png
└── update-package-issue.png
└── how-to-join-open-source-project.md
/index.html:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # xiaomiquan-backup
2 | A Backup Answer for Xiaomiquan
3 |
--------------------------------------------------------------------------------
/images/pomelo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/phodal/answer/master/images/pomelo.png
--------------------------------------------------------------------------------
/images/django-uuslug.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/phodal/answer/master/images/django-uuslug.png
--------------------------------------------------------------------------------
/images/flask-mongodb.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/phodal/answer/master/images/flask-mongodb.png
--------------------------------------------------------------------------------
/images/mezzanine-bug.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/phodal/answer/master/images/mezzanine-bug.png
--------------------------------------------------------------------------------
/images/sequelize-typos.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/phodal/answer/master/images/sequelize-typos.png
--------------------------------------------------------------------------------
/images/page-speed-issues.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/phodal/answer/master/images/page-speed-issues.png
--------------------------------------------------------------------------------
/images/add-language-support.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/phodal/answer/master/images/add-language-support.png
--------------------------------------------------------------------------------
/images/auto-save-zh-issue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/phodal/answer/master/images/auto-save-zh-issue.png
--------------------------------------------------------------------------------
/images/remove-unused-libs.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/phodal/answer/master/images/remove-unused-libs.png
--------------------------------------------------------------------------------
/images/update-package-issue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/phodal/answer/master/images/update-package-issue.png
--------------------------------------------------------------------------------
/how-to-join-open-source-project.md:
--------------------------------------------------------------------------------
1 | 如何真正地参与开源项目
2 | ===
3 |
4 | 对于我而言,我会参与的开源项目,一般都是**我正在使用的项目**——这是一个很重要的大前提。**只有你每天都在用,你才会知道哪里有问题,知道哪里需要改进**。
5 |
6 | 一、完善文档
7 |
8 | **用这个开源项目,就是最好的入门**。基于这一个前提,我们再来看看,在这个项目里的新手能做点什么?先给大家看一下,我最早的几次 Pull Request。这些都是我在用这个项目的过程中,发现的问题:
9 |
10 | 1. 更新 README
11 |
12 | 
13 |
14 | 这个项目也是醉了,连个安装方式都没有。
15 |
16 | 
17 |
18 | 这个是我在阅读官方文档的时候,发现怎么操作都不对。我才意识到这个文档是有问题的,顺手给了个 Pull Reqeust。这种问题很容易在 README 里找到错误。**修复的成本比较低,而且算是比较严重的错误**。
19 |
20 | 2. 代码中打错字了
21 |
22 | 
23 |
24 | 给 PageSpeed 的这次 Pull Request 是因为**代码中的一句错误提示的路径不对**。这虽然算是一个很小的语法错误,但是对于大部分人来说都是一脸懵逼。
25 |
26 | 
27 |
28 | 像这种也是相似的。如果是文档错误,一般开发人员会二会不说就直接 merge 了。
29 |
30 | 3. 除此,还有一种方式是:更新依赖版本
31 |
32 | 
33 |
34 | 不过,这一招是从别人身上学的,哈哈哈。
35 |
36 | 二、提 Issue
37 |
38 | 上述的完善文档的方式,最适合于刷提交,然后就是提和处理 Issue 了。有用的 Issue 本身是在**鼓励作者,你的项目有人用呢**。如这是以前我在使用 Mezzanine 库的时候,发现在某个情况下响应特别慢:
39 |
40 | 
41 |
42 | 然后我就去愉快地提了一个 Issue 来问作者——当时还在上学,没啥经验,不知道怎么解决。后来,发现我用的 Python 版本是 2.6,在 Python 2.7 下就没有这个问题了。相似的东西还有很多,这个时候一般来说,**是要把各种环境、条件都罗列清楚**。
43 |
44 | 当你关注一个项目很久的时候,你就可以帮作者回复 Issue 来提高好感度。这一点上,我就做得不好了,没有 watch 什么项目。不过,要是看到的时候,都会回答一下的。
45 |
46 | 三、深入代码去发现问题
47 |
48 | 1. 没有使用到的变量、方法
49 |
50 | 
51 |
52 | 这个是我在阅读代码的时候,发现的问题。在这个 seneca 项目里,明明有这么多过去使用到的,但是已经不再用的库了,于是我就给了个 Pull Request。
53 |
54 | 2. 添加一些功能支持:比如中文
55 |
56 | 
57 |
58 | 对于一些插件来说,它们都只有英语,而没有中文翻译——毕竟中文对于外国人蛮难的。这个时候,就可以添加一些中文翻译。又或者是相似的修复一些中文的语法问题:
59 |
60 | 
61 |
62 | 3. 深入到项目来实现功能
63 |
64 | 大部分的开源项目都会有 Roadmap 和 Issues 列表,按上面的内容去试图实现功能就可以了。
65 |
66 | blabla,我没啥实战经验——主要是平时自己想玩的东西比较多。
67 |
68 |
69 |
70 |
71 |
--------------------------------------------------------------------------------