Custom fields added to a board will apply to all tasks and sub tasks on that board. To see custom fields, open a task. Here's what it looks like.
This is a task
This is a sub task
Moving a Task
When you move a task from one board to another, the board that the task is on will control what custom fields display in the task. If the destination board doesn't have the same custom fields as the source board, any values collected on the source board are retained and stored within the task.
With mirrors, a task can live on more than one board at a time. With regards to custom fields, the board that the mirror is on will control what custom fields display in the task.