There are many things to consider in this situation.
Condition of roof – if you’re missing only a few shingles, then a repair could be the answer. However if extensive damage has been done, then it could be worth looking at getting a new roof installed.
Age of the roof – an average roof will last anywhere from 20-30 years depending on the type of cladding. If problems are appearing and it’s nearing the end of the lifespan, then a roof replacement could be the answer.
Budget – Many people opt to just repair their roof because this seems like the more affordable choice. However, investing in a new roof may prove to be more economical choice in the long run. A repair/ patch up will not necessarily solve your problems, and more repairs may need done again in future and can add up to be an expensive lesson to learn.