Fork the project [on GitHub](https://github.com/joyent/node) and check out
your copy.
-```
+```sh
$ git clone git@github.com:username/node.git
$ cd node
$ git remote add upstream git://github.com/joyent/node.git
Okay, so you have decided on the proper branch. Create a feature branch
and start hacking:
-```
+```sh
$ git checkout -b my-feature-branch -t origin/v0.10
```
Make sure git knows your name and email address:
-```
+```sh
$ git config --global user.name "J. Random User"
$ git config --global user.email "j.random.user@example.com"
```
Use `git rebase` (not `git merge`) to sync your work from time to time.
-```
+```sh
$ git fetch upstream
$ git rebase upstream/v0.10 # or upstream/master
```
test/simple/ directory. Look at other tests to see how they should be
structured (license boilerplate, common includes, etc.).
-```
+```sh
$ make jslint test
```
### PUSH
-```
+```sh
$ git push origin my-feature-branch
```
Unix/Macintosh:
- ./configure
- make
- make install
+```sh
+./configure
+make
+make install
+```
With libicu i18n support:
- svn checkout --force --revision 214189 \
- http://src.chromium.org/svn/trunk/deps/third_party/icu46 \
- deps/v8/third_party/icu46
- ./configure --with-icu-path=deps/v8/third_party/icu46/icu.gyp
- make
- make install
+```sh
+svn checkout --force --revision 214189 \
+ http://src.chromium.org/svn/trunk/deps/third_party/icu46 \
+ deps/v8/third_party/icu46
+./configure --with-icu-path=deps/v8/third_party/icu46/icu.gyp
+make
+make install
+```
If your python binary is in a non-standard location or has a
non-standard name, run the following instead:
- export PYTHON=/path/to/python
- $PYTHON ./configure
- make
- make install
+```sh
+export PYTHON=/path/to/python
+$PYTHON ./configure
+make
+make install
+```
Prerequisites (Windows only):
The tarballs are self-contained; you can extract them to a local directory
with:
- tar xzf /path/to/node-<version>-<platform>-<arch>.tar.gz
+```sh
+tar xzf /path/to/node-<version>-<platform>-<arch>.tar.gz
+```
Or system-wide with:
- cd /usr/local && tar --strip-components 1 -xzf \
- /path/to/node-<version>-<platform>-<arch>.tar.gz
+```sh
+cd /usr/local && tar --strip-components 1 -xzf \
+ /path/to/node-<version>-<platform>-<arch>.tar.gz
+```
### To run the tests:
Unix/Macintosh:
- make test
+```sh
+make test
+```
Windows:
- vcbuild test
+```sh
+vcbuild test
+```
### To build the documentation:
- make doc
+```sh
+make doc
+```
### To read the documentation:
- man doc/node.1
+```sh
+man doc/node.1
+```
Resources for Newcomers
---