{"id":31554547,"url":"https://github.com/sallescosta/gpush","last_synced_at":"2025-10-04T21:09:44.722Z","repository":{"id":244224945,"uuid":"814627118","full_name":"SallesCosta/gPush","owner":"SallesCosta","description":"gPush is a CLI tool written in Go, designed to manage and push to two different Git repositories simultaneously. It is useful when you have a project that is mirrored in two different repositories.","archived":false,"fork":false,"pushed_at":"2024-06-13T12:16:43.000Z","size":15794,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-07-21T01:39:21.252Z","etag":null,"topics":["bitbucket","cli","github","gitlab","go","golang"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SallesCosta.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":"roadmap.md","authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-06-13T11:31:05.000Z","updated_at":"2024-08-06T14:03:16.000Z","dependencies_parsed_at":"2024-06-13T14:18:02.304Z","dependency_job_id":"a3a26027-a357-4674-bf49-a838c65da70b","html_url":"https://github.com/SallesCosta/gPush","commit_stats":null,"previous_names":["sallescosta/gpush"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/SallesCosta/gPush","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SallesCosta%2FgPush","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SallesCosta%2FgPush/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SallesCosta%2FgPush/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SallesCosta%2FgPush/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SallesCosta","download_url":"https://codeload.github.com/SallesCosta/gPush/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SallesCosta%2FgPush/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278373517,"owners_count":25976150,"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","status":"online","status_checked_at":"2025-10-04T02:00:05.491Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["bitbucket","cli","github","gitlab","go","golang"],"created_at":"2025-10-04T21:09:43.086Z","updated_at":"2025-10-04T21:09:44.717Z","avatar_url":"https://github.com/SallesCosta.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# gPush\n\ngPush is a CLI tool written in Go, designed to manage and push to two different Git repositories simultaneously. It is useful when you have a project that is mirrored in two different repositories.\n\n## Installation\n\nTo install gPush, you need to have Go installed on your machine. Once Go is installed, you can download and install gPush using the `go get` command:\n\n```bash\ngo get github.com/sallescosta/gPush\n```\n\n## Basic Usage\n\nThe basic usage of gPush is as follows:\n\n```bash\ngPush [flags]\n```\n\n### Flags\n\n- `-s, --settings`: Open the settings menu. In the settings menu, you can set the original and secondary repositories.\n\n### Commands\n\n- `settings`: This command is used to push or set the original and secondary repositories.\n\n## Settings\n\nIn the settings menu, you can set the original and secondary repositories. If the repositories are not set, the program will prompt you to set them.\n\n## Behavior\n\nWhen you run gPush without any flags, it will check if there are any uncommitted changes in your repositories. If there are, it will prompt you to commit them before running the program.\n\nIf the original repository is not found, the program will notify you and exit.\n\nIf the secondary repository is not found or is undefined, the program will notify you and open the settings menu for you to set it.\n\nOnce both repositories are set and there are no uncommitted changes, the program will display the original and secondary repositories and proceed to push to both of them.\n\n## Building from Source\n\nIf you prefer to build the source code of gPush, follow the steps below:\n\n1. First, clone the repository to your local machine:\n\n```bash\ngit clone https://github.com/sallescosta/gPush.git\n```\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a pull request.\n\n## License\n\ngPush is licensed under the MIT license. See the LICENSE file for more details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsallescosta%2Fgpush","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsallescosta%2Fgpush","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsallescosta%2Fgpush/lists"}