Don't merge post-merge items

In all cases, the launcher-merger updates the repos involved in a
job before running it.  If there are pre-merge changes, it then
merges those changes into the repos.  If the job does not involve
pre-merge changes, then nothing further needs to happen.  Avoid
attempting to merge changes which are already merged in this case.

Change-Id: Ie0c0d258b4edad4afc3b569f8ea222523bc769c1
diff --git a/zuul/launcher/server.py b/zuul/launcher/server.py
index 9e29d7f..76b0fbb 100644
--- a/zuul/launcher/server.py
+++ b/zuul/launcher/server.py
@@ -361,7 +361,11 @@
                 task.wait()
             self.log.debug("Job %s: git updates complete" % (job.unique,))
             merger = self._getMerger(jobdir.git_root)
-            commit = merger.mergeChanges(args['items'])  # noqa
+            merge_items = [i for i in args['items'] if i.get('refspec')]
+            if merge_items:
+                commit = merger.mergeChanges(merge_items)  # noqa
+            else:
+                commit = args['items'][-1]['newrev']  # noqa
 
             # TODOv3: Ansible the ansible thing here.
             self.prepareAnsibleFiles(jobdir, args)