用于处理根目录内组织的项目和应用程序的实用工具。
项目描述
## 简介
这个想法受到Git和Django的启发,它们假设项目是组织在目录中的。许多其他应用程序和项目也以这种方式工作,如Ruby on Rails和Maven。
许多项目,如源代码仓库、Web应用程序等,存储代码、配置、脚本、虚拟环境等的相对位置,相对于项目或应用程序的根目录。
当执行脚本、应用程序、可执行文件、二进制文件、程序或命令时,它需要找到它应该操作的项目根目录。例如,git status 只在从git存储库内部调用时才工作。或者,Django manage.py 脚本可以在任何地方运行,但它知道要操作其所在的位置的Web应用程序。
项目命令中可以看到两个子组织原则,它们围绕如何找到项目的根目录
在“cwd”方法中,以git为例,代码和可执行文件根据当前工作目录找到项目。例如,要在git存储库中工作,必须首先通过cd到存储库目录树中的某个位置。
在“which”方法中,以django manage.py 脚本为例,代码和可执行文件根据可执行文件本身的路径找到项目。例如,django manage.py 脚本期望位于项目的根目录中。
“cwd”方法的一个优点是,可以使用一组二进制文件与多个项目一起使用。
“which”方法的优点之一是可以从任何地方运行二进制文件。另一个优点是每个项目都可以关联不同的代码/二进制文件版本。这对于部署应用程序的多个版本非常有用。
## 贡献
欢迎在GitHub上提交pull request。
## 要求
可能是Python 2.7(因为这是唯一经过测试的版本。)
## 安装
### 从pypi.python.org安装
使用pip下载和安装
pip安装projd
### 从github.com安装
使用GitHub,可以克隆并安装特定版本的软件包
cd ~ git clone git@github.com:todddeluca/projd.git cd projd python setup.py install
或使用pip
pip install git+git://github.com/todddeluca/projd.git#egg=projd
## 使用
有两个函数可以根据包含特定标记的根目录来查找项目的根目录,一个是基于当前工作目录的。
例如,要找到git仓库的根目录,可以这样操作
import projd root = projd.cwd_token_dir(‘.git’)
要找到包含正在执行的脚本的项目的根目录(类似于django manage.py文件的工作方式),可以这样操作
import projd root = projd.script_token_dir(‘.git’)
projd-0.1.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | eb6c902b39b7104fce78a1f4846f2c88e59b6e3b65251329dc930a5e6748a4b9 |
|
MD5 | 921f0bacdcdc4c6e729d082f5e96a1a6 |
|
BLAKE2b-256 | 046d9f441dd5703e7969df77349d1b0132785eda21c2ba08649b4041c601b847 |