I maintain several plugins (both at the .org repo and proprietary ones for clients that I manage in private satis instance to be used by composer on arbitrary projects)… the plugins typically uses sass and js - and I use a compilation process (gulp, grunt or webpack depending on the project) to builds the CSS, minifies, concatenates, etc.
every time I make a change, I run my compilation (gulp, grunt or webpack), i commit the compiled files then I manually change the version number in the main file and readme, and then run a commit it usually as “preparing for 0.3.0” and then tag it and push up which gets consumed by satis running a cron and I can update my arbitrary projects’ composer files to use the newest version.
I know for sure there’s a better way of doing this – I’d love to keep my repositories clean with just uncompiled files - add a post push hook to run some sort of a build process, set the version numbers, compile and create a dist release on github that would get picked up by my satis and be able to be used my composer for arbitrary projects.
Does anyone have experience doing this? Would I have this build process create a new branch, run the build, create the tag and push up? wouldn’t that pollute my repo with commits of compiled files? Thanks for any advice.