Commit a867c35e authored by Alexander Larsson's avatar Alexander Larsson

Add README.commits, update HACKING for git

parent 4a78eabc
......@@ -6,9 +6,10 @@ in releases on the GNOME FTP site
If you plan to hack on Nautilus, please make sure you work from the
SVN version. The SVN version can be checked from the GNOME svn server.
See for details on how to get
started with GNOME SVN.
Git version. The Git version can be checked from the GNOME git server.
See for details on how to get
started with GNOME Git. For details on how Nautilus uses git, see
the README.commits file.
If you want to contribute in development discussions, please send mail
to the nautilus mailing list: <>. Archives and
......@@ -23,7 +24,7 @@ If you've been working on a change to Nautilus and want to propose it
for inclusion, you have to generate a patch and submit it for review
by the maintainers.
Patches should be made with 'svn diff --diff-cmd diff -x -up >patch'
Patches should be made with 'git format-patch -M'
and should conform to Nautilus coding style as described in
docs/style-guide.html. We are pretty strict about coding style, so
please make sure you follow the style guide to avoid unnecessary
......@@ -36,7 +37,9 @@ bugzilla (, product 'nautilus'). If you do
this, please send a mail to the list saying you did so, because it is
very easy for the bugzilla email to get lost in all the bugzilla
reports, and only the people CCd on the bug can partake in the
discussion. When attaching bugs to bugzilla from git the git-bz
command can be helpful, see:
The Nautilus maintainers do their best to review patches and help
developers that want to work on something, however we are often
......@@ -31,6 +31,7 @@ EXTRA_DIST= \
README.commits \
nautilus.desktop \ \
ChangeLog-20000414 \
Nautilus is part of the GNOME git repository. At the current time, any
person with write access to the GNOME repository, can make changes to
Nautilus. This is a good thing, in that it encourages many people to work
on Nautilus, and progress can be made quickly. However, we'd like to ask
people committing to Nautilus to follow a few rules:
0) Ask first. If your changes are major, or could possibly break existing
code, you should always ask. If your change is minor and you've
been working on GVfs for a while it probably isn't necessary
to ask. But when in doubt, ask. Even if your change is correct,
somebody may know a better way to do things.
If you are making changes to Nautilus, you should be subscribed
to (Subscription address: This is a good place to ask
about intended changes.
#nautilus on GIMPNet (,,, ...)
is also a good place to find Nautilus developers to discuss changes with.
1) Ask _first_.
2) With git, we no longer maintain a ChangeLog file, but you are expected
to produce a meaningful commit message. Changes without a sufficient
commit message will be reverted. See below for the expected format
of commit messages.
3) Try to separate each change into multiple small commits that are
independent ("micro commits" in git speak). This way its easier to
see what each change does, making it easier to review, to cherry pick
to other branches, to revert, and to bisect.
* When developing larger features or complicated bug fixes, it is
advisable to work in a branch in your own cloned Nautilus repository.
You may even consider making your repository publically available
so that others can easily test and review your changes.
* The expected format for git commit messages is as follows:
=== begin example commit ===
Short explanation of the commit
Longer explanation explaining exactly what's changed, whether any
external or private interfaces changed, what bugs were fixed (with bug
tracker reference if applicable) and so forth. Be concise but not too brief.
=== end example commit ===
- Always add a brief description of the commit to the _first_ line of
the commit and terminate by two newlines (it will work without the
second newline, but that is not nice for the interfaces).
- First line (the brief description) must only be one sentence and
should start with a capital letter unless it starts with a lowercase
symbol or identifier. Don't use a trailing period either. Don't exceed
72 characters.
- The main description (the body) is normal prose and should use normal
punctuation and capital letters where appropriate. Normally, for patches
sent to a mailing list it's copied from there.
- When committing code on behalf of others use the --author option, e.g.
git commit -a --author "Joe Coder <>" and --signoff.
Alexander Larsson
17 Apr 2009
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment