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]

Reply via email to