I’m very new to coding and been accepted to my first voyage with Chingu (hooray and sh**t at the same time ^^’) and I have a question about how to organize every tool I’m supposed to use and my workflow.
If I understand correctly I should to something like this:
write code in my editor (VSC here)
commit my changes using Git via the terminal
deploy with Heroku once everything works
and repeat as many time necessary (to add a feature and all).
It really depends on the project and what you are doing. For instance if you are deploying a static site. You could just deploy it to GitHub pages.
You could also have a process like.
I create a new branch locally
I write some code and tests
I push my code to GitHub
a Travis CI intergration runs my test and makes sure everything works according to tests
I create a pull request to the master branch
The pull request gets merged
travis runs the tests again, but this time since it is the master branch it also deploys to something, Heroku, Netlify, Zeit, GitHub Pages, etc, or even all of the above
It all depends on how things are set up.
For instance I have my own eslint config I published on npm. The way it is currently set up is like what I just described, only it publishs the npm package so I can npm install eslint eslint-config-jnmorse in my projects. Did I need my own linting setup… eh maybe not, but I like it.
Connected to my config I wrote this and is also published on NPM but I haven’t set up the autodeploy yet. eslint-rule-finder. I partly wrote this just to see if I could, there was another one that Airbnb uses.