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 buildsrc/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 pullThis 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 stashWhen 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 pushThis 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