aframevr / aframe

:a: Web framework for building virtual reality experiences.
https://aframe.io/
MIT License
16.69k stars 3.98k forks source link

Beef up `CONTRIBUTING.md` to include helpful commands for dev env, GitHub/PR workflows, how to contribute #971

Closed cvan closed 8 years ago

cvan commented 8 years ago

à la https://github.com/servo/servo/blob/master/HACKING_QUICKSTART.md

Perhaps move/duplicate a bunch of the commands from the README.md and throw them here. The A-Frame Docs are specific to usage of A-Frame as a library, not about contributing to the A-Frame codebase itself.

ngokevin commented 8 years ago

consider consolidating into CONTRIBUTING to avoid plethora of .md files

ngokevin commented 8 years ago

@joshgalvin: "most windows node devs don't have the node-gyp compiler tool chain installed"

need to note that

ngokevin commented 8 years ago

some updates https://github.com/aframevr/aframe/commit/35de321a704578cb284667c630a6cc7c2673370d

could go into more detail like writing tests or style guide

cvan commented 8 years ago

I was going to file a separate issue, but it's probably fine to add as a comment here. We need to document how to enable the debug-level console logs.

I had this information in the README, but it was removed.

I couldn't find this info. anywhere in the docs, only in the code as comment.

Let's add it probably to both the docs and the CONTRIBUTING.md.

localStorage.logs = 1
ngokevin commented 8 years ago

FWIW, we only have one debug-level log in the whole codebase, and I've never used it.

ngokevin commented 8 years ago

Things I would add:

Contributing Code:

In tests/README.md, I would add more details on how to use the test suite. (explain the tool chain of karma/mocha/sinon, the process of adding a test).

mkungla commented 8 years ago

Add a note on how to rebase is good idea, but also other git stuff for PR life cycle
Since you most likely first clone you fork then that is your origin remote

  1. first you add upstream remote git remote add upstream git@github.com:aframevr/aframe.git
  2. If you want to make contibution you would create new branch shortly describing what you working on or just name it patch-x git fetch --all to update trackers git checkout -b patch-x upstream/master checkout new branch from upstream master git push -u origin HEAD push and create new branch under your github
  3. Do some work, commit it, push and PR
  4. If you branch fells behind or needs rebase run git fetch --all * to update trackers* git rebase upstream/master to rebase and play your commits on top git push -f to fast forward your patch-x branch on github
  5. After PR is merged you can just delete this branch by running git branch -D patch-x git push origin :patch-x
darkwing commented 8 years ago

I have a post about squashing commits if you think it would be a useful reference: https://davidwalsh.name/squash-commits-git

ngokevin commented 8 years ago

Yeah, thanks. I saw that is already linked in the CONTRIBUTING guide. Just wanted to address rebasing because sometimes people's branches get all messed up and they have to open a new PR.

darkwing commented 8 years ago

Oh sweet, I didn't know that :)