{"id":19146290,"url":"https://github.com/01walid/pg_branch","last_synced_at":"2025-05-07T02:03:57.718Z","repository":{"id":142876815,"uuid":"453549869","full_name":"01walid/pg_branch","owner":"01walid","description":"[WIP] Branch your development postgres database like you do in git","archived":false,"fork":false,"pushed_at":"2022-09-10T12:49:44.000Z","size":671,"stargazers_count":12,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-07T02:03:48.386Z","etag":null,"topics":["database","database-management","developer-tools","devops-tools","devtools","postgres","postgresql","workflow"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/01walid.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-01-30T00:10:42.000Z","updated_at":"2022-09-27T16:05:31.000Z","dependencies_parsed_at":"2023-03-16T14:01:15.737Z","dependency_job_id":null,"html_url":"https://github.com/01walid/pg_branch","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/01walid%2Fpg_branch","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/01walid%2Fpg_branch/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/01walid%2Fpg_branch/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/01walid%2Fpg_branch/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/01walid","download_url":"https://codeload.github.com/01walid/pg_branch/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252798852,"owners_count":21805886,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["database","database-management","developer-tools","devops-tools","devtools","postgres","postgresql","workflow"],"created_at":"2024-11-09T07:43:46.130Z","updated_at":"2025-05-07T02:03:57.710Z","avatar_url":"https://github.com/01walid.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# pg_branch\n[![Tests](https://github.com/01walid/pg_branch/actions/workflows/tests.yml/badge.svg)](https://github.com/01walid/pg_branch/actions/workflows/tests.yml)\n[![Clippy](https://github.com/01walid/pg_branch/actions/workflows/clippy.yml/badge.svg)](https://github.com/01walid/pg_branch/actions/workflows/clippy.yml)\n[![Rustfmt](https://github.com/01walid/pg_branch/actions/workflows/rustfmt.yml/badge.svg)](https://github.com/01walid/pg_branch/actions/workflows/rustfmt.yml)\n\n\u003cimg align=\"left\" width=\"320\" alt=\"Branch your postgres database like you do in Git\" src=\"https://raw.githubusercontent.com/01walid/pg_branch/main/assets/logo-dark.png\" /\u003e\n\n\u003cul\u003e\n  \u003cli\u003e :elephant: Branch your \u003cstrong\u003edevelopment\u003c/strong\u003e Postgres DB like you do in Git!\n  \u003cli\u003e 🚀 Fast DB copying, no \u003ccode\u003epg_dump\u003c/code\u003e / \u003ccode\u003epg_restore\u003c/code\u003e (by default)!\n  \u003cli\u003e :computer: Rust-based single binary, supports Windows, Linux \u0026 Mac.\n  \u003cli\u003e :open_file_folder: Auto-discovers your Git setup \u0026 branches.\n\u003c/ul\u003e\n\n\u003cbr\u003e\n\n**Warning**: This is a work in progress.\n\n## Why?\nEver wanted to test a migration in isolation? then revert back to your main development database quickly? Or test a pull request or a feature-branch without the need to give up your development database's data or schema.\n\n`pg_branch` goal is to help provide quick copies of your current development database, then help you manage those copies (drop, rename, cleanup, ..etc). This is especially usefull when provisioning \"preview environments\" that are a copy of staging/prod, e.g. a database per Vercel PR preview.\n\n\n## Demo\n\n![pg_branch](https://user-images.githubusercontent.com/983020/153002119-3c846525-f4bc-4514-9d38-0b51f7e416a0.svg)\n\nTODO: \n- More tests\n- Git hooks / Husky support\n- Pre-built binaries for Mac/M1, Linux \u0026 Windows.\n- npm package\n- switch --no-rename mode\n- `pg_branch run \u003cshell|os\u003e command\u003e` for the no-rename mode.\n- VCS agnostic?\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F01walid%2Fpg_branch","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F01walid%2Fpg_branch","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F01walid%2Fpg_branch/lists"}