Relocate Existing Cards During New Import

I’m not sure if a PR addressing the following would be accepted:

The Problem:

I have already-reviewed cards that I need to move to a new deck with a new hierarchical structure, and I need to achieve this automatically whenever a new import is performed (completely optional from the import dialog).

Function:

Use Case

Scenario: A user wants to update their deck’s deck structure without losing study progress on existing cards.

Current Limitation: When importing a deck with a new hierarchy, Anki would skip existing cards and if the user wants to reorganize it requires manual intervention of existing cards.

Proposed Solution: Add an import option to “Relocate existing cards to new deck hierarchy” that:

  1. Automatically moves matched cards to their corresponding new deck locations
  2. Preserves all review history , including ease factors, intervals, due dates, etc.
  3. Leaves unmatched cards in their original locations for manual review
2 Likes

I second the need for this feature. I have made some questionable decisions regarding my vault’s deck structure. By moving all Sub-decks into a tag-based hierarchy. I would like to get my old deck based hierarchy back, and having this import option would be a life-saver. I realized that I was doing better with the cards when there was proper sub-deck based categorization, now I cannot browse as efficiently as I used to.

I made this add-on: [Link]. It is somewhat limited, it currently supports .apkg files only and requires the cards to share the same global identifier (same origin). Hope it works for you!