When using FreeBSD, I always run into the problem of maintaining local ports. Usually I find a way around the problem using some good-natured shell hijinks, or end up simply installing linux as a stop-gap (due to time pressure), but this time I think I've found a more permanent solution: Local ports which coexist with portsnap! In that thread there was actually another, similar solution, but I've stuck with the first for now. The only significant difference between the two was the use of categories.

I followed the instructions in the first link, leaving out any ports categories I didn't need. Then I created a git repository in /usr/ports/local, committed everything under that to the repository, and pushed the repository to my server (just in case). Finally, I ran portsnap fetch update to see if it would blow away my changes... and it didn't! It did not include my local branch when building the index, so I'll have to run make index after updating the ports tree. A small price to pay.

This method leaves me easily able to re-install while retaining all those ports I've enhanced with local tweaks... you know... both of them. ;)