version-master
![Software License][ico-license]
![Coverage Status][ico-scrutinizer]
![Total Downloads][ico-downloads], (*1)
Version Master is a git based versioning tool for PHP projects with Laravel Service Providers.
This package uses the .git
storage file to read the current hash for the specified project or folder., (*2)
Since, the GitHashReader
uses file access, it does not need to have access to the git
command or exec
privileges which may not be available in production environments., (*3)
Install
Via Composer, (*4)
``` bash
$ composer require rtablada/version-master, (*5)
## Usage
The basic class for this package is the `GitHashReader`.
It requires two arguments:
* `required` - An instance of `Illuminate\Filesystem` - Used to read from the Git File Tree
* `required` - A string path for the root of the git project.
* `optional` - A string path for the name of the git storage folder (defaults to `.git`)
``` php
$reader = new Rtablada\VersionMaster\GitHashReader();
echo $reader->getFullVersion(); // Outputs latest hash on git HEAD
Laravel Usage
This package also includes a Service Provider to allow use in Laravel Applications., (*6)
This Service Provider acts in two ways:, (*7)
- Registers a singleton so that
Rtablada\VersionMaster\GitHashReader
can be injected.
- Registers a
@version()
helper in Blade to output the short version number.
To install this Service Provider just add Rtablada\VersionMaster\GitVersionProvider::class
in your providers
array in config/app.php
., (*8)
Change log
Please see CHANGELOG for more information what has changed recently., (*9)
Testing
bash
$ composer test
, (*10)
Contributing
Please see CONTRIBUTING for details., (*11)
Security
If you discover any security related issues, please email ryan.tablada@gmail.com instead of using the issue tracker., (*12)
Credits
License
The MIT License (MIT). Please see License File for more information., (*13)