This began as a project that Takram led to refactor and open source the Design in Tech Report. I've been finally learning lot of things I should have learned a long time ago from @shotamatsuda and the Takram team. Thank you! —@johnmaeda
-
Make sure you have the latest node and npm (9.7.1 and 5.7.1 at the time of this writing).
-
Clone and install node modules.
git clone git@github.com:johnmaeda/designintechreport-2018.git cd designintechreport-2018 npm install
-
Start webpack dev server on http://localhost:3000.
npm start
Runing the following command outputs compiled files in the build
directory.
npm run build
src/index.md
is the markdown source file for remark.js.
Github Flavoured Markdown explicitly states that 4 spaces are needed to indent list items, which is a bit wider, personally. It may make you better to configure the tab width of your editor to 2 spaces or whatever you prefer and use tabs in Markdown files.
Here're some useful resources:
- Git Cheat Sheet – Github's official git cheatsheet
- Git Reference – Git CLI reference
- Tower – Super well-made git GUI app
- A successful Git branching model – One of the most commonly used strategies of Git branching
git pull
This retrieves changes from the remote tracking branch of a remote repo.
Pull is fetch + merge, meaning if you have any local changes you must stash the changes first:
git stash # Save your local changes in a stash
git pull
git stash pop # Apply and delete the stash
When you see package.json
in changed files after pulling, make sure to do:
npm install
This updates the installation of npm dependencies in your local copy according to the updated package.json
. Don't confuse it with npm update
, which checks for newer versions (minor and patch of semver) of all the dependencies and updates package.json
.
git commit -m '<your commit message>'
git push
This makes a new commit, and sends the commit data and refs to the remote tracking branch of a remote repo.
git checkout -b <local ref> <remote ref>
This create and checkout a new local branch with a remote tracking info to the remote branch.
The order of arguments and its notation is confusing.
git checkout -b master origin/master # Checkout remote `master` branch
git checkout -b feature/fix origin/feature/fix # Checkout remote `feature/fix` branch