I've upgraded Laravel a bunch of times for many of my apps. It can be a serious pain in the ass sometimes. Months ago, I remember hearing the buzz about Laravel Shift. The cost of a shift from Laravel 5.0 to 5.1 was only $9 and I thought it would be fun to try, eh. I don't think I even read the FAQ past the first answer since I'm a horrible person.
First, you have to sign in via Github, Bitbucket, or Gitlab. At that time you authorize Shift to access your public and private repos for that providor. Then, you choose a repo and branch you would like to upgrade. After payment, you'll recieve a pull request on a newly created branch. It happened by the time I had tabbed back over to Github in Chrome, but results may vary.
The PR itself contains a barrage of commits like
Adopt PSR-2 coding style and it also gives you a list of manual changes you'll have to make in the comments. I found this style easier to follow than the typical upgrade guide in the Laravel docs.
I had a copy of my blog already up and running on Valet, but when I switched over to the new branch,
composer install didn't go well even after a fetch. Instead, I cloned a new copy of the repo to checkout the laravel-5.1-shift branch.
$ git clone email@example.com:mackhankins/mackhankins.git $ cd mackhankins $ git checkout laravel-5.1-shift $ composer install
The process is by no means perfect. For example, my
config/app.php looked a little funky.
<?php Illuminate\Broadcasting\BroadcastServiceProvider::class, return [ 'env' => env('APP_ENV', 'production'),
After fixing a few small errors, I committed my changes and merged the shift PR into master.
Anyone who has done these upgrades manually really needs to try this to fully appreciate it, but it's a product for everyone using Laravel. I enjoyed the experience so much I shifted 5.1 to 5.2 the next day.