From Fedora Project Wiki

(Fix link)
(Make note about tests)
Line 51: Line 51:
<li>Now you can send the patches you've created, which will have names such as ''0001-my-change.patch'', to the {{fplist|websites}} list.</li>
<li>Now you can send the patches you've created, which will have names such as ''0001-my-change.patch'', to the {{fplist|websites}} list.</li>
</ol>
</ol>
{{admon/note | Sending a test patch | If you want to send a test patch somewhere, please don't use the websites list. Instead, send to your own @fedoraproject.org email.  Thank you!}}


== Showing off your changes ==
== Showing off your changes ==

Revision as of 13:24, 21 April 2010

This page describes how to fix a bug or submit other changes to the Fedora Project website. Anyone can perform these steps, and you do not need special permission to send a patch to the websites list for consideration.

Making changes

Important.png
Never use root account for this
Do not use your system's root account for this work. All of these steps can be run by a normal user. You only need to provide the root password to install packages in the first step.

This procedure shows you how to copy the fedora-web repository locally and use your local store to make changes.

  1. Ensure you have the Package-x-generic-16.pnggit package and the Apache web server installed:
    su -c 'yum shell'
    > install git gettext python-genshi python-setuptools babel python-feedparser
    > groupinstall 'Web Server'
    > run
  2. Set up at least your name and email address in your global git configuration, as shown on this section of the git quick reference.
  3. Make sure you are in a directory to which you have write access, such as your home directory or a subdirectory, and clone the websites repository. This takes several minutes on a fast connection.
    cd $HOME
    git clone git://git.fedorahosted.org/git/fedora-web.git
  4. Change directory to the website you want to change. The repository carries several sites, including fedoraproject.org, spins.fedoraproject.org, and others.
    cd fedora-web/fedoraproject.org
  5. Make a new branch for your changes ("mychanges" is a name you can choose):
    git checkout -b mychanges
  6. Make your changes. It's best to make a set of related changes together, but don't make many unrelated changes at once. For instance, it's OK to make several spelling fixes together, but don't combine those with an additional navigation menu option.
  7. Test your changes.
    make

    After the make completes successfully and the website will now be available in your /out/ directory. Now run a local sandbox test of the website:

    make test
  8. Point your web browser at http://localhost:5000 to view the sandbox site. When you are done viewing, stop the temporary web server:
    make stoptest
  9. If everything looks OK, stage the files you changed:
    git add data/content/file1.html data/content/file2.html
  10. Commit the staged changes:
    git commit -m 'Fix spelling errors'

Sending in your changes

  1. When you're done, create patch files for your changes:
    git format-patch origin/master
  2. Now you can send the patches you've created, which will have names such as 0001-my-change.patch, to the websites list.
Note.png
Sending a test patch
If you want to send a test patch somewhere, please don't use the websites list. Instead, send to your own @fedoraproject.org email. Thank you!

Showing off your changes

You can copy the contents of the /out/ folder to a web share, if you have one, for viewing. Your fedorapeople.org space provides this under the ~/public_html/ folder.

ADVANCED USERS: You can also copy your git tree to your fedorapeople.org storage site, which allows us to easily pull them in. If you don't have a fedorapeople.org account, you'll need to post your changes somewhere and let us know.

Instructions for using your fedorapeople.org space are found on the fedorapeople.org wiki page.

Additional information

The git quick reference might be useful for you, beyond just setting up your global configuration.

The Git Community Book is an excellent reference if you find git useful and want to learn more about it.

You don't have to be a member of the Websites team to help fix things on the site, but if you find yourself doing it more than once, you might want to join us!