Skip to main content

A command-line manager for archiving and retrieving projects.

Project description

https://badge.fury.io/py/proj.png https://travis-ci.org/larsyencken/proj.png?branch=master https://pypip.in/d/proj/badge.png

A command-line folder manager for archiving and restoring a long-term set of projects.

proj assumes the following working setup:

  • You have a directory of active projects that you’re working on (e.g. ~/Projects)

  • You have a directory of inactive projects, your archive (e.g. ~/Archive)

Given this setup, proj helps you add and remove projects from your archive, and keeps your archive organised in <year>/<quarter> subfolders, based on when each project was last worked on.

Installation

Install the package with pip:

pip install proj

Then, tell proj where your archive directory is, by creating a ~/.proj.yml file

archive_dir: _archive

You can enable compression for archives by adding more directives to the YAML file:

compression: true
compression_format: bztar

The supported formats are: tar, gztar, bztar and zip.

Usage

Use proj to get rid of clutter in your main directory of projects by archiving ones that aren’t being worked on. Proj will detect when you last made a change and file it accordingly.

$ ls
cocktails-that-are-blue   news-for-llamas   old-crusty-project
$ proj archive old-crusty-project
old-crusty-project -> /Users/lars/Archive/2012/q3/old-crusty-project
$ ls
cocktails-that-are-blue   news-for-llamas
$ proj list
2012/q3/old-crusty-project

Now we’ve archived this project, but we can restore it at any time.

$ proj restore old-crusty-project
/Users/lars/Archive/2012/q3/old-crusty-project -> old-crusty-project
$ ls
cocktails-that-are-blue   news-for-llamas   old-crusty-project

Features

  • proj archive: archive a project to an appropriate directory

  • proj restore: restore a project from the archive

  • proj list: search the archive for a project

History

0.2.0 (dev)

  • Moved to Python 3.x only support to allow type hinting

  • Move to a config file rather than environment variables

  • Support compression for archiving and restoring

0.1.0 (2014-01-11)

  • First release on PyPI.

  • Archive, restore and search features.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

proj-0.2.0.tar.gz (19.6 kB view details)

Uploaded Source

Built Distribution

proj-0.2.0-py2.py3-none-any.whl (8.6 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file proj-0.2.0.tar.gz.

File metadata

  • Download URL: proj-0.2.0.tar.gz
  • Upload date:
  • Size: 19.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2

File hashes

Hashes for proj-0.2.0.tar.gz
Algorithm Hash digest
SHA256 acf1e0a6aa3d6e3a7ca56f9a1b25abce80d1e9d6a69d57c89a2bce43133ff65d
MD5 59c1c6d8d7a1f0cbc064bf699676a972
BLAKE2b-256 a02b70459cdba0d97758ed3ab53641f12d0639e8dd9c3d6bd835977bf5a34c23

See more details on using hashes here.

File details

Details for the file proj-0.2.0-py2.py3-none-any.whl.

File metadata

  • Download URL: proj-0.2.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 8.6 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2

File hashes

Hashes for proj-0.2.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 350b8f46d49e1a5080bb6dff61f8a18c11e81caf2ae0a3ede04e293c9cb891db
MD5 e8a0d51aff78d381c045e264d061321d
BLAKE2b-256 87d7032c1f29b50e8d970cde7dc25d9231a4b26747be2a0b8b5f3ab20f9d5c42

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page