Closed rehno-lindeque closed 11 years ago
The feedback I got from others is that they preferred being able to consistently git pull genesis
for updates, since it's evolving.
That, and the generator is particularly "dumb", in that, for maintainability, it didn't really provide options, but just override whatever you already had in your code.
But, @rehno-lindeque, clearly I was wrong here, so I'll adjust.
Do you know an easier way of keeping the generator in sync with the skeleton?
Thanks!
Oh thanks! I see what you mean by pulling latest versions of genesis-skeleton. Actually I suppose that this can be quite a headache to maintain (especially for a new-ish project). I haven't looked much at how the generators function, I'd hoped that it's easy to maintain a seed separately from the generator...
I was going to suggest perhaps a git submodule for the seed, but I see you already have that... :)
Wait, what if we simply just ran a git pull origin master
on the submodule as part of the generation? That's all we'd need, right?
@rehno-lindeque I found a great solution that will work for the feature branches I have, too!
@rehno-lindeque This will improve once yeoman/generator#247 gets tagged (the latest at 0.11.1
does not have the forced refresh option that I want).
Until then, this worked out fantastic. Thank you so much for bringing this up and having me refactor. The solution is MUCH better than cloning, IMO. You can use v0.2.0
immediately (8b2ab1bb8c9b556dff4ea362abf56c50bda51da6). (Actually, I made a cosmetic change so instead use v0.2.1
:D)
Here's what the output looks like:
yo genesis --skip-install
.---------------------------------------.
| |
| G E N E S I S S K E L E T O N |
| |
| You're moments away from |
| your next great app! |
| |
'---------------------------------------'
[?] Would you like to setup package.json first? (Y/n)
# `npm init` runs here
✔ Initialized package.json
✔ Merged Genesis Skeleton package into existing package.json
create .gitignore
create .travis.yml
create Gruntfile.coffee
create LICENSE
create README.md
create bin/browsers.sh
create bower.json
create client/app/scripts/app.js
...
create karma.conf.js
conflict package.json
[?] Overwrite package.json? (enter "h" for help) [Ynaqdh]? (h) y
force package.json
create server/app.js
create server/lib/api/index.js
create server/server.js
✔ Generated Genesis Skeleton
I'm all done. Just run bower install & npm install to install the required dependencies.
Thanks so much @ericclemmons, it looks great!
Just out of curiosity, why not provide a yeoman generator? I know genesis-skeleton is intended to be opinionated in terms of libraries, but it seems convenient to just type
yo genesis
?