[SalesForce] Migrate GlobalValueSet (Global Picklist) between orgs when GlobalValueSet is part of a managed package

I have a GlobalValueSet in my managed package, and in a subscriber org I've added values to it.
e.g. A 'Country' global picklist in the managed package, then in a subscriber org I add the countries I care about.

I'm trying to migrate those changes from one subscriber sandbox to another, however I'm getting an error:

[sf:deploy] Component Failures:

[sf:deploy] 1. globalValueSets/MY_NAMESPACE__Country.globalValueSet — Error: Cannot modify managed object: entity=SharedPicklistDefinition, component=null, state=MANAGED_INSTALLED – picklists

Is there a way to migrate the values of a global picklist to another org, without having to manually create them in the target org?

Best Answer

Using the Salesforce Migration Tool, you can put a global picklist to the build file like this (the API name has underscores between words but no suffix):

<?xml version="1.0" encoding="UTF-8"?>
<Package xmlns="http://soap.sforce.com/2006/04/metadata">
    <types>
        <members>My_List_Name</members>
        <name>GlobalValueSet</name>
    </types>
    <version>38.0</version>
</Package>