Take these steps, the short version:
1. cd /usr
2. fetch -o ports.tar.gz "http://ftp.freebsd.org/pub/FreeBSD/ports/ports/ports.tar.gz"
3. rm -r ports
4. tar xvf ports.tar.gz
5. ll ports
6. rm -i ports.tar.gz
7. make -C ports/ports-mgmt/pkg install clean
The lenghty version, with explication, and if you want to preserve the distfiles (source files):
1. cd /usr
2. mv ports ports.orig
3. fetch -o ports.tar.gz "http://ftp.freebsd.org/pub/FreeBSD/ports/ports/ports.tar.gz"
or extract from the directory where the tarball is, if you have previously downloaded it, say from/home/khantroll:
4. tar xvf /home/khantroll/ports.tar.gz -C /usr. -C /usr will instruct tar to extract in /usr.
If you have a copy of the tarball in /usr:
4.1. tar xvf ports.tar.gz
This will extract a ports directory in /usr, where you are at the moment, no need to create one.
There are source files or at least one (pkg source) in the previous ports/distfiles directory. Copy/move them/it before deleting the old ports directory.
5. mkdir ports/distfiles
6. mv ports.orig/distfiles/* ports/distfiles
7. rm -r ports.orig
check if the ports directory is present:
8. ll ports
9. rm -i ports.tar.gz
Now build pkg, hopefully without incident.
make -C ports/ports-mgmt/pkg install clean