Add options for git-repo to support private and wip changes

This change adds options for git-repo tool to support private
changes and work-in-progress changes.

Change-Id: I343491f5949f06f1580d53f9cc0dee2dca09130f
diff --git a/project.py b/project.py
index 9a79527..0b7baee 100644
--- a/project.py
+++ b/project.py
@@ -176,11 +176,15 @@
   def UploadForReview(self, people,
                       auto_topic=False,
                       draft=False,
+                      private=False,
+                      wip=False,
                       dest_branch=None):
     self.project.UploadForReview(self.name,
                                  people,
                                  auto_topic=auto_topic,
                                  draft=draft,
+                                 private=private,
+                                 wip=wip,
                                  dest_branch=dest_branch)
 
   def GetPublishedRefs(self):
@@ -1107,6 +1111,8 @@
                       people=([], []),
                       auto_topic=False,
                       draft=False,
+                      private=False,
+                      wip=False,
                       dest_branch=None):
     """Uploads the named branch for code review.
     """
@@ -1158,9 +1164,14 @@
                                   dest_branch)
     if auto_topic:
       ref_spec = ref_spec + '/' + branch.name
+
     if not url.startswith('ssh://'):
       rp = ['r=%s' % p for p in people[0]] + \
            ['cc=%s' % p for p in people[1]]
+      if private:
+        rp = rp + ['private']
+      if wip:
+        rp = rp + ['wip']
       if rp:
         ref_spec = ref_spec + '%' + ','.join(rp)
     cmd.append(ref_spec)
diff --git a/subcmds/upload.py b/subcmds/upload.py
index fa80c3d..61b18bc 100644
--- a/subcmds/upload.py
+++ b/subcmds/upload.py
@@ -154,6 +154,12 @@
     p.add_option('-d', '--draft',
                  action='store_true', dest='draft', default=False,
                  help='If specified, upload as a draft.')
+    p.add_option('-p', '--private',
+                 action='store_true', dest='private', default=False,
+                 help='If specified, upload as a private change.')
+    p.add_option('-w', '--wip',
+                 action='store_true', dest='wip', default=False,
+                 help='If specified, upload as a work-in-progress change.')
     p.add_option('-D', '--destination', '--dest',
                  type='string', action='store', dest='dest_branch',
                  metavar='BRANCH',
@@ -378,7 +384,12 @@
             branch.uploaded = False
             continue
 
-        branch.UploadForReview(people, auto_topic=opt.auto_topic, draft=opt.draft, dest_branch=destination)
+        branch.UploadForReview(people,
+                               auto_topic=opt.auto_topic,
+                               draft=opt.draft,
+                               private=opt.private,
+                               wip=opt.wip,
+                               dest_branch=destination)
         branch.uploaded = True
       except UploadError as e:
         branch.error = e