# GTO
[![Check, test and release](https://github.com/iterative/gto/actions/workflows/check-test-release.yml/badge.svg)](https://github.com/iterative/gto/actions/workflows/check-test-release.yml)
[![Codecov](https://codecov.io/gh/iterative/gto/branch/main/graph/badge.svg?token=NXT11717BG)](https://codecov.io/gh/iterative/gto)
[![PyPi](https://img.shields.io/pypi/v/gto.svg?label=pip&logo=PyPI&logoColor=white)](https://pypi.org/project/gto)
Git Tag Ops. Turn your Git repository into an Artifact Registry:
- Registry: Track new artifacts and their versions for releases and significant
changes.
- Lifecycle Management: Create actionable stages for versions marking status of
artifact or it's readiness to be consumed by a specific environment.
- GitOps: Signal CI/CD automation or other downstream systems to act upon these
new versions and lifecycle updates.
GTO works by creating annotated Git tags in a standard format.
💡 Together with [DVC](https://dvc.org), GTO serves as a backbone for Git-based
[Iterative Studio Model Registry](https://dvc.org/doc/studio/user-guide/model-registry/what-is-a-model-registry).
## Installation
GTO requires Python 3. It works on any OS.
```console
$ pip install gto
```
This will install the `gto`
[command-line interface](https://dvc.org/doc/gto/command-reference) (CLI) and
make the Python API available for use in code.
## Getting started
To Get Started, please head to [GTO docs](https://dvc.org/doc/gto/get-started).
## Contributing
Contributions are welcome! Please see our
[Contributing Guide](https://dvc.org/doc/contributing/core) for more details.
Check out the
[DVC weekly board](https://github.com/orgs/iterative/projects/189)
to learn about what we do, and about the exciting new functionality that is
going to be added soon.
Thanks to all our contributors!
<details>
How to setup GTO development environment
1. Clone this repository
```console
$ git clone git@github.com:iterative/gto.git
$ cd gto
```
2. Create virtual environment named `venv`
```console
$ python3 -m venv .venv
$ source .venv/bin/activate
```
Install python libraries
```console
$ pip install --upgrade pip ".[tests]"
```
3. Run
```console
$ pytest --basetemp=pytest-basetemp
```
This will create `pytest-basetemp/` directory with some fixtures that can serve
as examples.
Notably, check out this dir:
```console
$ cd pytest-basetemp/test_api0/
$ gto show -v
```
The code that generates this folder could be found
[in this fixture](https://github.com/iterative/gto/blob/main/tests/conftest.py).
To continue experimenting, call `gto --help`
</details>
## Copyright
This project is distributed under the Apache license version 2.0 (see the
LICENSE file in the project root).
By submitting a pull request to this project, you agree to license your
contribution under the Apache license version 2.0 to this project.
Raw data
{
"_id": null,
"home_page": null,
"name": "gto",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "git, repo, repository, artifact, registry, developer-tools, collaboration",
"author": null,
"author_email": "Alexander Guschin <aguschin@iterative.ai>",
"download_url": "https://files.pythonhosted.org/packages/d6/ea/ea6267da29ac54a53944106e46337e3e8e43eaa24bb6b7cf5da18043758c/gto-1.7.2.tar.gz",
"platform": null,
"description": "# GTO\n\n[![Check, test and release](https://github.com/iterative/gto/actions/workflows/check-test-release.yml/badge.svg)](https://github.com/iterative/gto/actions/workflows/check-test-release.yml)\n[![Codecov](https://codecov.io/gh/iterative/gto/branch/main/graph/badge.svg?token=NXT11717BG)](https://codecov.io/gh/iterative/gto)\n[![PyPi](https://img.shields.io/pypi/v/gto.svg?label=pip&logo=PyPI&logoColor=white)](https://pypi.org/project/gto)\n\nGit Tag Ops. Turn your Git repository into an Artifact Registry:\n\n- Registry: Track new artifacts and their versions for releases and significant\n changes.\n- Lifecycle Management: Create actionable stages for versions marking status of\n artifact or it's readiness to be consumed by a specific environment.\n- GitOps: Signal CI/CD automation or other downstream systems to act upon these\n new versions and lifecycle updates.\n\nGTO works by creating annotated Git tags in a standard format.\n\n\ud83d\udca1 Together with [DVC](https://dvc.org), GTO serves as a backbone for Git-based\n[Iterative Studio Model Registry](https://dvc.org/doc/studio/user-guide/model-registry/what-is-a-model-registry).\n\n## Installation\n\nGTO requires Python 3. It works on any OS.\n\n```console\n$ pip install gto\n```\n\nThis will install the `gto`\n[command-line interface](https://dvc.org/doc/gto/command-reference) (CLI) and\nmake the Python API available for use in code.\n\n## Getting started\n\nTo Get Started, please head to [GTO docs](https://dvc.org/doc/gto/get-started).\n\n## Contributing\n\nContributions are welcome! Please see our\n[Contributing Guide](https://dvc.org/doc/contributing/core) for more details.\n\nCheck out the\n[DVC weekly board](https://github.com/orgs/iterative/projects/189)\nto learn about what we do, and about the exciting new functionality that is\ngoing to be added soon.\n\nThanks to all our contributors!\n\n<details>\n\nHow to setup GTO development environment\n\n1. Clone this repository\n\n```console\n$ git clone git@github.com:iterative/gto.git\n$ cd gto\n```\n\n2. Create virtual environment named `venv`\n\n```console\n$ python3 -m venv .venv\n$ source .venv/bin/activate\n```\n\nInstall python libraries\n\n```console\n$ pip install --upgrade pip \".[tests]\"\n```\n\n3. Run\n\n```console\n$ pytest --basetemp=pytest-basetemp\n```\n\nThis will create `pytest-basetemp/` directory with some fixtures that can serve\nas examples.\n\nNotably, check out this dir:\n\n```console\n$ cd pytest-basetemp/test_api0/\n$ gto show -v\n```\n\nThe code that generates this folder could be found\n[in this fixture](https://github.com/iterative/gto/blob/main/tests/conftest.py).\n\nTo continue experimenting, call `gto --help`\n\n</details>\n\n## Copyright\n\nThis project is distributed under the Apache license version 2.0 (see the\nLICENSE file in the project root).\n\nBy submitting a pull request to this project, you agree to license your\ncontribution under the Apache license version 2.0 to this project.\n",
"bugtrack_url": null,
"license": "Apache License 2.0",
"summary": "Version and deploy your models following GitOps principles",
"version": "1.7.2",
"project_urls": {
"Issues": "https://github.com/iterative/gto/issues",
"Source": "https://github.com/iterative/gto"
},
"split_keywords": [
"git",
" repo",
" repository",
" artifact",
" registry",
" developer-tools",
" collaboration"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "99b36c4d96d931d09b5fd7b47ac81999360fa807e1607b8328e49bb1e50c65ae",
"md5": "e1a30cf758c5524c108b6ba38fd39dd6",
"sha256": "c893e5cf35ef0ffe22d342498f25c85b38f2cc507500e41b5e00d254feda1c1c"
},
"downloads": -1,
"filename": "gto-1.7.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "e1a30cf758c5524c108b6ba38fd39dd6",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 45227,
"upload_time": "2024-12-01T20:53:31",
"upload_time_iso_8601": "2024-12-01T20:53:31.488357Z",
"url": "https://files.pythonhosted.org/packages/99/b3/6c4d96d931d09b5fd7b47ac81999360fa807e1607b8328e49bb1e50c65ae/gto-1.7.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "d6eaea6267da29ac54a53944106e46337e3e8e43eaa24bb6b7cf5da18043758c",
"md5": "54173a2ee4a9eba31189fb9709264d6b",
"sha256": "98994f43d02ef6d4e77c4087b1c0c70a038e4a753a5583c23116246d33b89742"
},
"downloads": -1,
"filename": "gto-1.7.2.tar.gz",
"has_sig": false,
"md5_digest": "54173a2ee4a9eba31189fb9709264d6b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 58824,
"upload_time": "2024-12-01T20:53:33",
"upload_time_iso_8601": "2024-12-01T20:53:33.128258Z",
"url": "https://files.pythonhosted.org/packages/d6/ea/ea6267da29ac54a53944106e46337e3e8e43eaa24bb6b7cf5da18043758c/gto-1.7.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-01 20:53:33",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "iterative",
"github_project": "gto",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"lcname": "gto"
}