You're on your way to the next level! Join the Kudos program to earn points and save your progress.
Level 1: Seed
25 / 150 points
1 badge earned
Challenges come and go, but your rewards stay with you. Do more to earn more!
What goes around comes around! Share the love by gifting kudos to your peers.
Keep earning points to reach the top of the leaderboard. It resets every quarter so you always have a chance!
Join now to unlock these features and more
I have a team managed project where I have >5k tickets. There are only Epics, Tasks and bugs, and lot of custom field configured in that team managed project.
I want to migrate from existing team managed project to a new Company managed project. I know, and I have read lot of articles regarding this topic but decided to raise this issue again ;)
1) I have Tasks in team managed project and I want to change Task -> Enhancement in the new Company managed project
2) I have lot of FixVersions configured in team managed project, and I want to keep them in new Company managed one
3) I have lot of Custom fields which MUST be kept in the new Company managed project
4) I have Sprints in team managed project, and I want to create new ones in Company managed project and associate the corresponding tickets with the new sprints.
Bulk Move wont do the job, because I will lost the Custom Fields data. And because of this I decided to go with the "Bulk Clone" direction
I know there are few plugins that do the magic, but with some limitation. For example, with "Deep Clone" I could not manage to change the issueType when cloning (See point 1)
The Export/Import is very dangerous, because it is too much complicated and tricky and most likely I will lost some important data when importing
So, guys, please help me to understand what is the best option to solve my Use Cases.
Main page on doing this without Apps is here: https://support.atlassian.com/jira-software-cloud/docs/migrate-between-team-managed-and-company-managed-projects/
Some things I'd consider doing if I wasn't using an App:
^ I'd be testing this with some test data first however. Create another Team-managed Project (TMP) and put in some test data, then attempt the move and highlight anything which doesn't work as intended.
Some of the steps above (like the recreation of custom fields) are needed regardless
Otherwise as you mention, cloning is an option - you could either...
For Automation, just be mindful of usage limits on Standard - see limits here
hi @Stephen Wright _Elabor8_ thanks for this detailed answer.
I have already tried a lot of options and yes, I think the most applicable option is to:
1) Clone all the tickets from TMP to CMP using the "Deep Clone" app
2) Bulk change the issueTypes from Task -> Enhancement
3) Manually set the proper custom fields data (Customer, Platform, Test Case Path). Or automate this process using Jira Automation (should be possible)
4) Manually create the same sprints and re-assign tickets to the new sprints. I think I can use Automation also here.
Anyway, I will try also the other plugin "Elements Copy & Sync - clone Jira issues" to come up with the final decision.
Do you think the "Elements Copy & Sync - clone Jira issues" is better than the "Deep Clone" or they are almost the same ? ;)
ok thanks @Stephen Wright _Elabor8_ I tried the other one as well, and it seems yes, the only option is "Deep Clone".
Anyway, let me ask one more question:
Would it be possible to set the corresponding custom fields value from the currentIssue to the clonedIssue using Jira Automation ?
It would look something like this:
if currentIssue.customField is NOT EMPTY then SET clonedIssue.customField.value = currentIssue.customField.value
Assuming this isn't possible in Deep Clone, it should be possible.
You could also recreate the Custom Fields in your Team-managed Project as "global" Custom Fields before you migrate, and move the data across? Might be simpler. TMPs can use shared fields as well as have their own unique versions.
That might be a more efficient model.
Automation can also clone issues - although it will be more setup / trial & error than using an App.
I'm Luka from codefortynine the creators of Deep Clone for Jira 👋
Thanks to @Stephen Wright _Elabor8_ for mentioning us!
I think most points in your use case can be solved within Deep Clone without any need for additional Jira automations.
1) You should be able to change the issue type while cloning.
2) Deep Clone can create Versions that don't exist in the target project.
3) Deep Clone will match the custom field values of your projects according to the field name. So The custom fields need to have the identical name in the company-managed project and the team-managed project. If this isn't possible, you could use our Clone and Edit feature with Jira expressions to set the new field's value to the field value of the old custom field.
4) Deep Clone can create Sprints that don't exist in the target project while cloning.
Hi @Luka Hummel - codefortynine thanks for the detailed explanation. To be honest I already made a good success on my use-cases using DeepClone, so thanks to your team for creating such a great Jira plugin.
Few points for your consideration:
1) It is possible to change the issue type in target project, yes ! But it is possible only then if the tickets have the same issueType, otherwise, if there are different issue types it would not be possible to set the proper issue type. For example in my use-case, I wanted to change the "Task" -> "Enhancement" while cloning the Tasks. But it is not possible to clone ONYL the Tasks, because there are almost 5k tickets and they are interrelated each other. Like, there is an Epic which have "Story"s, "Task"s and "Bug"s as child issues.
3) Deep Clone will match the custom field values of your projects according to the field name. - I could not find any info about the custom fields in your app in "Bulk Clone" wizard. I just realized that it works like you described ONYL after the clone operation. And the funny thing here is, it worked only for ONE custom field, because there is ONYL one custom field which name matches in both the project TMP vs CMP ))
So, I have to setup the other custom fields manually :)