michel RENON wrote:
Hi porters,
Hi there!
[... snip ...]
I have some questions about patches :
how do i need to get organized to work with you ?
First thing to start with for a new developer is usually submitting
patches via "issuezilla".
That is you create a task here:
http://qa.openoffice.org/issue_handling/pre_submission.html
with type patch.
and attach a patch file to it (see below).
You should sign the JCA and send it in to assign copyright prior to
doing that.
http://wiki.services.openoffice.org/wiki/Contributing_Patches#Joint_Copyright_Assignment
Next step after submitting in patches via issuezilla is that you can
apply for cvs write access and create your own ChildWorkspaces.
OOo uses branches in CVS called ChildWorkspaces and MasterWorkspaces and
besides issuezilla a tool called EIS to organize the work, see the
following URLs for details:
http://wiki.services.openoffice.org/wiki/EIS
http://wiki.services.openoffice.org/wiki/CWS
http://eis.services.openoffice.org/
Another important documentation to read is here:
http://wiki.services.openoffice.org/wiki/Main_Page#Getting_started_with_OOo_development
If you submitt patches via issuezilla someone else will need to include
this to his/her ChildWorkspace and most likely have a look at it also
before it becomes part of the new source code.
when i'll modify code on my disk :
- i need to keep an original version of the code to generate a patch ?
That´s one simple way of doing it.
The other and probably better one involves using cvs commands like described
on http://wiki.services.openoffice.org/wiki/Contributing_Patches,
eg. using cvs -z3 diff -u
cvs does keep history of changes for you so there is not really a need
to keep an original version: you can always go back to older revisions
by using cvs commands and you can create diffs from older versions to
your current modified version by using cvs commands.
How do i rename the original file ?
Just keep one directory with the complete original sources and one
containing changed+unchanged complete sources to work on.
Or better use cvs commands.
- when a cvs checkout will be needed, my modified files will be
overwritten ?
Modified files will be merged on cvs update. Mostly chances are good
that the other changes are "somewhere else" and everything works out
fine. If not and changes are eg. at nearly the same lines you get a
merge conflict and the file will than contain your changes plus the new
changes plus comments from the cvs command indicating where the merge
got wrong what was new in the cvs repository and what was new in your
version. In this case you will have to resolve the conflict by editing
the file with the merge conflict remove the comments created by the cvs
command and create a new version that manages to get both changes
somehow together or prefers one change against the other depending on
the type of change or something like that.
- how do i generate a "good" patch, that can be used by others porters ?
(1 patch for each modified file ?...)
Well it´s much better to couple related changes together into one patch
which can be applied by the "patch" utility than creating one patch for
each file.
IMHO a "good" patch is one can be used by patch(1) and that covers just
one topic or a few very closely related topics and contains everything
needed to fix/implement one issue created in issuezilla for it.
If you keep a directory with original sources a patch can be created by
the diff(1) utility using eg.:
diff -u --recursive --new-file originalSourceDir newSourceDir
> patch.txt
Such a patch can be applied by using:
patch < patch.txt
Important thing is to generate a "real" patch, that means a diff-file
created by either diff(1) or cvs(1) than can be used by patch(1). See
manuals for these commands for details. Best thing is to use cvs
commands of course because that way you don´t need to keep an additional
copy of the original sources and you do not need to cleanup build files
before creating the patch.
I found only that page about that on the wiki :
http://wiki.services.openoffice.org/wiki/Contributing_Patches but it
doesn't answer to my questions.
Thank you
Michel
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
Kind regards,
Bernd
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]