The purpose of this chapter is to provide a comprehensive review of the field of genome rearrangement, i.e., comparative genomics based on representation of genomes as ordered sequences of signed genes. We specifically focus on the "hard part" of genome rearrangement, how to handle duplicated genes. The main questions are: how have present-day genomes evolved from a common ancestor? What are the most realistic evolutionary scenarios explaining the observed gene orders? What was the content and structure of ancestral genomes? We aim to provide a concise but complete overview of the field, starting with the practical problem of finding an appropriate representation of a genome as a sequence of ordered genes or blocks, namely the problems of orthology, paralogy and synteny block identification. We then consider three levels of gene organization: the gene family level (evolution by duplication, loss and speciation), the cluster level (evolution by tandem duplications) and the genome level (all types of rearrangement events, including whole genome duplication).