Open maksyche opened 4 years ago
@mikelalcon we are working to get Copybara working on an existing project (nexus repository, wee!), and this is holding us up a bit. Any thoughts?
Hi!
core.workflow has smart_prune field. Unfortunately, this field usage is not implemented for git.destination. The use case is when you do scrubbing from internal to external repo.
Keeping that usage apart, there is not usage for it, as the source should converge to one version (internal and external).
The other option is to use patch.apply or git.origin patch field. This allows you to apply internal only patches to the import. (This would be used if external is the SoT)
Hi!
core.workflow has smart_prune field. Unfortunately, this field usage is not implemented for git.destination. The use case is when you do scrubbing from internal to external repo.
Keeping that usage apart, there is not usage for it, as the source should converge to one version (internal and external).
The other option is to use patch.apply or git.origin patch field. This allows you to apply internal only patches to the import. (This would be used if external is the SoT)
Thank you! Is there any examples with patch usage? I cannot find them in docs
We don't have. Here is an example:
Assuming you have this file structure:
copy.bara.sky
patches/patch1.patch
patches/patch2.patch
You would add:
origin = git.github_pr_origin(
...
patch = patch.apply(["patches/patch1.patch", "patches/patch2.patch"]),
...
)
or
transformations = [
...
patch.apply(["patches/patch1.patch", "patches/patch2.patch"]),
...
]
The advantage of the git origin version is that if you generate the patch from the origin repo ( maybe do an initial temporary and local git apply of the internal patch to the external repo and then save that patch) it will use 3way merge when applying the patch.
I took a shot at adding smart_prune support in #112. At least for my use case it has allowed importing PRs from github when scrubbing was used in the export process.
Hello!
I'm stuck on importing PRs.
But I need to migrate only PR changes. I think I can use something like patch. Is there any solutions for doing it using Copybara?
Here's my current config:
Thank you!