mirror of
https://gerrit.googlesource.com/git-repo
synced 2024-12-21 07:16:21 +00:00
sync: add option to skip manifest update
The use case is any situation where your manifest does not exist on server, but where you still want to do full sync for the projects, without having your workspace manifest switched to other branch or forwarded to latest or similar. This allows syncing to a historical manifest in git log, that does not have a branch, as well as when integrating something together that has not been pushed upstream yet. Changes can also exist locally on a manifest that is behind head, meaning not requiring rebase to latest. Tested using: $ cd .repo/manifests/ $ git checkout <any hash 1> $ <do local modifications> $ repo sync --no-manifest-update $ git checkout <any hash 2> $ repo sync --no-manifest-update Change-Id: I0c9773aa8bc5876813a2e7d7fec697abcb2d9e94 Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/246445 Tested-by: Fredrik de Groot <fredrik.de.groot@volvocars.com> Reviewed-by: Mike Frysinger <vapier@google.com>
This commit is contained in:
parent
66098f707a
commit
cc960971f4
@ -217,6 +217,10 @@ later is required to fix a server side protocol bug.
|
|||||||
p.add_option('-l', '--local-only',
|
p.add_option('-l', '--local-only',
|
||||||
dest='local_only', action='store_true',
|
dest='local_only', action='store_true',
|
||||||
help="only update working tree, don't fetch")
|
help="only update working tree, don't fetch")
|
||||||
|
p.add_option('--no-manifest-update','--nmu',
|
||||||
|
dest='mp_update', action='store_false', default='true',
|
||||||
|
help='use the existing manifest checkout as-is. '
|
||||||
|
'(do not update to the latest revision)')
|
||||||
p.add_option('-n', '--network-only',
|
p.add_option('-n', '--network-only',
|
||||||
dest='network_only', action='store_true',
|
dest='network_only', action='store_true',
|
||||||
help="fetch only, don't update working tree")
|
help="fetch only, don't update working tree")
|
||||||
@ -907,7 +911,10 @@ later is required to fix a server side protocol bug.
|
|||||||
if opt.repo_upgraded:
|
if opt.repo_upgraded:
|
||||||
_PostRepoUpgrade(self.manifest, quiet=opt.quiet)
|
_PostRepoUpgrade(self.manifest, quiet=opt.quiet)
|
||||||
|
|
||||||
self._UpdateManifestProject(opt, mp, manifest_name)
|
if not opt.mp_update:
|
||||||
|
print('Skipping update of local manifest project.')
|
||||||
|
else:
|
||||||
|
self._UpdateManifestProject(opt, mp, manifest_name)
|
||||||
|
|
||||||
if self.gitc_manifest:
|
if self.gitc_manifest:
|
||||||
gitc_manifest_projects = self.GetProjects(args,
|
gitc_manifest_projects = self.GetProjects(args,
|
||||||
|
Loading…
Reference in New Issue
Block a user