A healthy puppy should eat twice a day. They are still developing and growing, so they will need more calories than an adult German Shepherd.
For the first few months, your puppy's stomach can't digest much. So, feed him small amounts several times a day. The volume you're feeding will gradually increase as he gets older. At this stage, it's okay if he doesn't finish his entire meal at one time.