Changes

Jump to: navigation, search

Services/Sync/Getting Started

1,640 bytes added, 05:36, 23 May 2012
no edit summary
# Define your editor for commits, other tools
$ git config --global core.editor vim
 
= Android Sync =
 
You should carefully read the previous sections on Git and landing patches on services-central.
 
For the moment we assume that you have a working checkout of [http://github.com/mozilla-services/android-sync android-sync]. The rudiments of landing code are this:
 
<pre>
AS=~/moz/git/android-sync
SC=~/moz/hg/services-central
 
# In your services-central checkout, create a new patch.
# Ensure that you're correctly carrying over the author from the Git commit.
cd $SC
hg qnew -m "Bug 123456 - Part 1: frob the noo. r=foobar, a=blocking-fennec" --user "John Smith <theauthor@foo.com>" frob-noo
 
# For each merged piece of work that you'd like to land...
# Ensure you're on the correct git branch. That's typically develop, or an
# ancestor thereof if you've merged multiple feature branches since your last landing.
cd $AS
git checkout develop
 
# Run the appropriate copy-code script, targeting the correct upstream hg repository.
ANDROID=$SC/mobile/android SYNC=$SC/mobile/android/sync ./fennec-copy-code.sh
 
# Refresh the patch, adding and removing any files.
cd $SC
hg st
hg add any-missing-files.java
hg rm anything-removed.java
hg qref
 
# Check that the patch is what you want to commit.
# You are responsible for anything that you land in the tree,
# so it behooves you to make sure you get this right.
less .hg/patches/frob-noo
 
# Ensure that everything builds.
make -sj4 -C objdir-droid
 
# And runs...
make -C objdir-droid package
adb install -r objdir-droid/dist/fennec-15.0a1.en-US.android-arm.apk
</pre>
 
Now follow the steps for a regular services-central landing.
 
This is all eminently scriptable, of course.
 
= Repositories =
Canmove, confirm
640
edits

Navigation menu