Services/Sync/Getting Started: Difference between revisions

From MozillaWiki
< Services‎ | Sync
Jump to navigation Jump to search
Line 1: Line 1:
= Getting started with Sync development =
= Getting started with Sync development =


== Configure Mercurial ==
== Using Mercurial ==


Put the following in your ~/.hgrc:
Mozilla's development process is very much patch driven. [[Mercurial Patch Queues|https://developer.mozilla.org/en/Mercurial_queues]], although a bit awkward to use at times, fit this process rather well. It is recommended you familiarize yourself with them and use them.
 
=== Configuration ===
 
Marco Bonardo has some [[general purpose tips|http://blog.bonardo.net/2010/06/22/so-youre-about-to-use-checkin-needed]] for Mozilla developers on how to format patches before uploading them to Bugzilla.
 
Essentially it is recommended you put the following in your ~/.hgrc:


   [ui]
   [ui]
Line 10: Line 16:
   [extensions]
   [extensions]
   hgext.mq =  
   hgext.mq =  
 
 
   [diff]
   [diff]
   git = 1
   git = 1
   unified = 8
   unified = 8
 
 
   [defaults]
   [defaults]
   diff = -pU8
   diff = -pU8
Line 20: Line 26:
   qnew = -U
   qnew = -U
   qseries = -sv
   qseries = -sv
You can also add the following to ~/.hg/hgrc:
  [paths]
  default = http://hg.mozilla.org/services/
  default-push = ssh://hg.mozilla.org/services/


== Repositories ==
== Repositories ==

Revision as of 07:18, 26 November 2010

Getting started with Sync development

Using Mercurial

Mozilla's development process is very much patch driven. https://developer.mozilla.org/en/Mercurial_queues, although a bit awkward to use at times, fit this process rather well. It is recommended you familiarize yourself with them and use them.

Configuration

Marco Bonardo has some http://blog.bonardo.net/2010/06/22/so-youre-about-to-use-checkin-needed for Mozilla developers on how to format patches before uploading them to Bugzilla.

Essentially it is recommended you put the following in your ~/.hgrc:

 [ui]
 username = Your Name <you@mozilla.com>
 
 [extensions]
 hgext.mq = 
 
 [diff]
 git = 1
 unified = 8
 
 [defaults]
 diff = -pU8
 qdiff = -pU8
 qnew = -U
 qseries = -sv

Repositories

fx-sync

Sync is primarily developed in the https://hg.mozilla.org/services/fx-sync/ repository. Things that live there:

  • The Services client libraries in services/crypto/ and services/sync.
  • The Firefox Sync add-on in addon/*
  • The Firefox 3.x and Fennec 1.x UIs for the Sync add-on in ui/*

mozilla-central

mozilla-central is the repository for Firefox and the base repository for other Mozilla-based applications. How mozilla-central is relevant to Sync:

  • The client library is periodically merged from fx-sync to mozilla-central.
  • The integrated UI for Firefox Sync lives in browser/base/*, along with the rest of the Firefox UI.

Merging fx-sync to mozilla-central