# 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": "Alexander Guschin",
"author_email": "aguschin@iterative.ai",
"download_url": "https://files.pythonhosted.org/packages/4c/5f/1c49a78fef3e040457b4195c4d7d9c315dde8bde134c0d91e9a180e1af57/gto-1.7.1.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.1",
"project_urls": {
"Download": "https://github.com/iterative/gto"
},
"split_keywords": [
"git",
"repo",
"repository",
"artifact",
"registry",
"developer-tools",
"collaboration"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "4cd0f63c98b70e42051d214b9e5e79d2c1e554c56b1107a780f77dfffc2cda3b",
"md5": "dbcd6ebd27784372b283d423e9d19bc1",
"sha256": "466c3e059aacc7eb3b7780a5f4b49e4a32001b059feb2b426d5b0737f7e71f72"
},
"downloads": -1,
"filename": "gto-1.7.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "dbcd6ebd27784372b283d423e9d19bc1",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 46603,
"upload_time": "2024-03-20T04:39:50",
"upload_time_iso_8601": "2024-03-20T04:39:50.315496Z",
"url": "https://files.pythonhosted.org/packages/4c/d0/f63c98b70e42051d214b9e5e79d2c1e554c56b1107a780f77dfffc2cda3b/gto-1.7.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "4c5f1c49a78fef3e040457b4195c4d7d9c315dde8bde134c0d91e9a180e1af57",
"md5": "63ab97720167f91264a1552988893d6e",
"sha256": "24100e735195c0d54539401f42804fc9042998276cdc4233f49f153fd38a7d75"
},
"downloads": -1,
"filename": "gto-1.7.1.tar.gz",
"has_sig": false,
"md5_digest": "63ab97720167f91264a1552988893d6e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 58932,
"upload_time": "2024-03-20T04:39:52",
"upload_time_iso_8601": "2024-03-20T04:39:52.415003Z",
"url": "https://files.pythonhosted.org/packages/4c/5f/1c49a78fef3e040457b4195c4d7d9c315dde8bde134c0d91e9a180e1af57/gto-1.7.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-03-20 04:39:52",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "iterative",
"github_project": "gto",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"lcname": "gto"
}