Skip to main content

A Multi-SCM Multi-Repository Workspace Management Framework

Project description

odyssey is a cross-platform cross-architecture cross-scm workspace management tool. It is designed from the ground up to support multi-repository workflows, and is easily extended to work with any scm or package management tool out there. Although odyssey is written in python, it will work for multi-repository projects in any programming language, even ones that use multiple languages.

Even if it will take ten years, it will have been worth it.

Supported Platforms Supported CPU Architectures GitHub Release PyPI Travis AppVeyor CircleCI GitHub Workflow Codeship Documentation Status https://img.shields.io/badge/code%20style-black-000000.svg https://coveralls.io/repos/github/python-odyssey/odyssey/badge.svg?branch=master GitHub code size in bytes GitHub issues GitHub GitHub stars https://img.shields.io/discord/714011709794418698

Problem Space

odyssey is the answer to the question “How can my project use multiple types of version control, where different types of files can be stored in the system most approproiate them?”

A practical use case from real-world experience: In the video game industry, projects have large amounts of both code and binary files. Projects can have tens, hundreds, or thousands of GBs of development assets and hundreds of thousands or even millions of lines of code. Most teams at present choose between git and perforce. This leads to all kinds of problems in either case. odyssey is built so that teams can choose to use git for their source files (code, documentation, scripts, asset manifests, etc.) and use perforce for their asset files (images, sounds, models, animations, etc.)

Goals

Usefulness: odyssey should be useful to a wide variety of teams in a wide variety of industries. Both open source projects and enterprise projects should find something they love here.

Gradual Adoption: odyssey should not force an all or nothing scenario where only new teams can use it. Many teams have decades of effort invested in their existing setup, and they need to be able to adopt odyssey usage gradually for it to stand a chace of success.

Reproducibility: odyssey should make it easier to reproduce workflows for both developer workstations and build pipelines.

Speed: odyssey should execute as fast as possible, but no faster. You’ll know it when you see it.

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

odyssey-1.0.2.tar.gz (6.1 kB view details)

Uploaded Source

Built Distribution

odyssey-1.0.2-py3-none-any.whl (5.6 kB view details)

Uploaded Python 3

File details

Details for the file odyssey-1.0.2.tar.gz.

File metadata

  • Download URL: odyssey-1.0.2.tar.gz
  • Upload date:
  • Size: 6.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.5 CPython/3.7.2 Windows/10

File hashes

Hashes for odyssey-1.0.2.tar.gz
Algorithm Hash digest
SHA256 0d25b7e406fa35f28f665ae2d6e60e219fda2413e57dfa31ba392e6e3bfed977
MD5 55325aca763308acbe378c3c36cb7098
BLAKE2b-256 3ed0d3eac9154290a2b8a37e593f6423a8d3d1b9c46073af264d24839b19be40

See more details on using hashes here.

File details

Details for the file odyssey-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: odyssey-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 5.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.5 CPython/3.7.2 Windows/10

File hashes

Hashes for odyssey-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c60732a9d4905d5293abf6d2d907596d9e19b426d4f51375cb54fee4b7f35f13
MD5 372168017b489c04ba98a9dbb2a2514e
BLAKE2b-256 a11b2451cffe7cfc30bdc9c6db33302957ad83e95256d6e31ae3ffb6d24e08d8

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