GithubHelp home page GithubHelp logo

runt18 / html Goto Github PK

View Code? Open in Web Editor NEW

This project forked from sneakyness/html

0.0 2.0 0.0 327.88 MB

Deliverables of the HTML Working Group

ApacheConf 0.06% HTML 99.05% JavaScript 0.56% Makefile 0.07% CSS 0.26%

html's Introduction

html

Deliverables of the HTML Working Group

Commits twitter feed: @HTML_commits

Spec Editing Cheatsheet

Checking out the HTML spec

  1. the HTML spec is on GitHub https://github.com/w3c/html

  2. there are multiple branches - get master to build the spec

Pull the code from GitHub:

$ git clone https://[email protected]/w3c/html.git
$ cd html
$ git checkout -b whatwg origin/feature/whatwg

To check what branches you have:

$ git branch

To continue editing at a later stage:

$ git checkout master
$ git pull --rebase

Then check out each branch and:

$ git rebase master

To commit and push code to GitHub:

$ git commit -a
$ git push

Configuring git

If you're editing the spec on Windows, be sure to read up on how to deal with line endings.

You'll probably want to configure Git to automatically rebase on pull. To do this, edit .git/config in your repository. In the [branch "master"] section, add a rebase = true line. To ensure this happens for any new branches you create, add a new section like so:

[branch]
    autosetuprebase = always

Installing the necessary software

  1. You need to have python installed on your system.

  2. Install Anolis:

    $ hg clone https://bitbucket.org/ms2ger/anolis $ cd anolis; sudo python setup.py install

    Periodically, make sure your Anolis is up to date:

    $ cd anolis $ hg pull

    If there have been changes, update and reinstall:

    $ hg update $ sudo python setup.py install

  3. Install html5lib:

    $ hg clone https://code.google.com/p/html5lib/ $ cd html5lib/python; sudo python setup.py install

    Periodically, make sure your html5lib is up to date:

    $ cd html5lib $ hg pull

    If there have been changes, update and reinstall:

    $ hg update $ cd python; sudo python setup.py install

  4. Install lxml:

    $ sudo easy_install lxml

  5. Ensure you have a clone of the html-tools downloaded.

Build the spec

Please check out and follow the repository at https://github.com/w3c/html-tools .

Cherry pick commits from the WHATWG spec

  1. the WHATWG spec is developed in SVN at the WHATWG
  2. there is a git clone of it on GitHub https://github.com/w3c/html/tree/feature/whatwg
  3. we cherry-pick commits from the WHATWG spec into the html spec

Checkout the WHATWG spec:

$ git checkout feature/whatwg

Find out commit differences to html branch:

$ git cherry master

Find a commit that you want to apply, get it’s SHA:

$ git log

Show the SHA commit e.g.:

$git show 56446c4536af1ec5b39bde03b402d0772625fd92

Checkout the html spec:

$ git checkout master

Cherry pick the commit selected from before:

$ git cherry-pick -x 56446c4536af1ec5b39bde03b402d0772625fd92

If you want to edit the commit:

$ git cherry-pick -x -e 56446c4536af1ec5b39bde03b402d0772625fd92

Show changes to GitHub:

$ git diff origin

If you want to abort a cherry-pick:

$ git cherry-pick --abort

If you need a merge strategy:

$ git cherry-pick --strategy=ours -x 56446c4536af1ec5b39bde03b402d0772625fd92

Only pick parts of the commit (no-commit, then add selectively):

$ git cherry-pick -n -x 56446c4536af1ec5b39bde03b402d0772625fd92
$ git add -i
   r = revert a file
   p = go through by hunk and re-patch
   (when “>>” hit ENTER to start)
   q = bye
To just commit the staged parts:
$ git commit
To reset the unselected hunks:
$ git checkout complete.html index source

Check if a specific commit is contained in the master:

$ git checkout master
$ git branch --contains 56446c4536af1ec5b39bde03b402d0772625fd92

Create a new feature branch:

[make sure your .gitconfig defaults push to upstream]

$ git checkout master
$ git checkout -b feature/blah
$ git push --set-upstream origin feature/blah

Merging a feature branch:

You should not use the GitHub pull request merge feature, but instead rebase locally and push (to avoid a messy merge and get a linear history):

$ git checkout feature/blah
$ git rebase master

Test everything still works, then push to GitHub:

$ git push -f

Then merge on master:

$ git checkout master
$ git merge feature/blah
$ git push

If you want to delete the branch, too, remove it both on local and GitHub (the issue with the pull request will continue to exist):

$ git branch -d feature/blah
$ git push origin :feature/blah

html's People

Contributors

darobin avatar erikadoyle avatar hixie avatar hober avatar kevinsawicki avatar mounirlamouri avatar rubys avatar sideshowbarker avatar silviapfeiffer avatar stevefaulkner avatar stommepoes avatar travisleithead avatar wiltzius avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.