项目地址:kennethreitz/pip-pop
git clone https://github.com/kennethreitz/pip-pop.git
下载下来后的目录结构是这样的
|+---bin
| pip-diff
| pip-grep
|LICENSE (就是项目遵守的协议,看了下是MIT协议。
|README.rst (相当于README.md
|requirements.txt (依赖包
|setup.py (安装脚本
看到bin目录下的py脚本没有后缀,我当时有点疑惑,但是看到了Shebang,恍然大悟了。。
#!/usr/bin/env python
也许这个项目本身就不是为windows用户提供使用的
README.rst是个啥
平时逛github找东西的时候,发现大多数都是README.md。突然出来一个README.rst,顿时手足无措啊。这个文件介绍了如何使用pip-pop库,以及这个项目未来要做的事情。
找了下资料才知道,rst是reStructuredText的缩写,马上就懂了。想起md是Markdown啊,PyPI不支持Markdown格式,所以才用的reStructuredText。都是标记语言,而且都比HTML好啊。为了证实我的想法,我在PyPI上搜索这个库,结果真的存在!
PyPI地址:pip-pop
依赖的库
requirements.txt里的内容是
docopt==0.6.2
wsgiref==0.1.2
这两个库,只有wsgiref我有点印象,还记得Python2.7中那个非常给力的小工具吗?
python -m SimpleHTTPServer
对于docopt之前我是没有任何接触的。简单的说wsgiref就是个创建WSGI应用的工具,docopt是个命令行参数解析库/命令行界面构建工具。重点不在这两个依赖库,读懂项目的源码才是我要做的事情。
setup.py
"""
pip-pop manages your requirements files.
"""
import sys #获取命令行参数使用的
from setuptools import setup #easy_install安装第三方包时就是调用setuptools来进行安装的
setup(
name='pip-pop', #库名
version='0.1.0', #版本
url='https://github.com/kennethreitz/pip-pop',