Do the majority of the repair on the bottom side of your roof (inside the cab), and run the glass backing inside (under the headliner) as well this will allow you to keep the top side of your roof level and not noticeable as having been repaired, you want to sand the area for a couple of inches around the hole, be sure it is clean and scuffed up really well so the new glass will have a good surface to bind too, and be sure to glass out a couple of inches around the hole to stop any stress cracks that are probably in the top form being hit by the branch, the extra glassing in the area will stop most all the them from ever getting noticeable, or getting bigger as time goes by..
After you get the inside done, lightly sand the outside to remove any fiberglass that is above the level of the roof from your patch on the inside, and >LIGHTLY< scuff up the area around the hole on the top side with 800 grit, clean the area with some alcohol, there is a product called Feather Fill (you will want to use this if you want it to appear correct, after its scuffed and clean, apply a small dab of Feather Fill to the area next to the hole, then using a plastic Bondo spreader or a plastic scrapper, squeegee it in all directions filling any little areas that are lower than the rest of the surface, after the Feather fill is set up, sand it with 1200 grit until you can no longer feel the patch or any surface irregularities.. then hit it with some type of paint to cover and protect the feather fill and some what match your top so its not so noticeable..
Good Luck