ibrostudio / gitbro
Cli app to manage Git repositories and facilitate releases management
Installs: 4
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
Type:project
Requires
- php: ^8.2.0
Requires (Dev)
- ajthinking/archetype: ^2.0
- fakerphp/faker: ^1.23
- ibrostudio/laravel-git: ^1.0
- illuminate/log: ^11.5
- laravel-zero/framework: ^11.0.0
- laravel-zero/phar-updater: ^1.4
- laravel/pint: ^1.15.2
- mockery/mockery: ^1.6.11
- owenvoke/laravel-xdg: ^1.4
- pestphp/pest: ^2.34.7
- pestphp/pest-plugin-laravel: ^2.4
- vlucas/phpdotenv: ^5.6
README
Installation
composer global require ibrostudio/gitbro
Configuration
To communicate with Github, you need to register in the config a Github Personal Access Token:
gitbro config
Init a new project
gitbro init
This will create a new Github repository, following your parameters, as visibility or ownership, and then clone it locally.
Using templates repositories
You can use a template for your project. By default, Spatie Package Skeleton Laravel and Filament PHP Plugin Skeleton are available, but you can add more using the following command:
gitbro template
Conventional Commits
This app follows the Conventional Commits specification. A commit type will prefix your message to help history comprehension and will be used by the CHANGELOG generator.
gitbro commit
Running scripts before commit
You can automatically run tests or format code scripts before each commit:
Create a gitbro.neon
file at the root of your project with:
scripts: format-code: - 'vendor/bin/pint' - 'npx prettier . --write' test-code: - 'composer test'
Pull, push, sync
gibro pull
for git pull origin main --rebasegibro push
for git push origin maingibro sync
will execute gitbro pull and then gitbro push
Releases
You can easily perform a release creation by running:
gitbro release
This will:
- define the version, following the semantic versionning
- bump the new version in composer.json and/or package.json if used
- generate a note section in your CHANGELOG
- create the release on Github
Testing
composer test