Preheat oven to 350°F (175°C). Grease and flour three 9-inch round cake pans.
In a large bowl, sift together flour, sugar, cocoa powder, baking soda, and salt.
Add buttermilk, vegetable oil, eggs, and vanilla to the dry ingredients and mix until smooth.
Divide batter evenly into prepared pans and bake for 35-40 minutes or until a toothpick inserted in the center comes out clean.
Allow cakes to cool in pans for 10 minutes, then turn out onto wire racks to cool completely.
For the frosting, combine evaporated milk, sugar, egg yolks, and butter in a saucepan over medium heat. Stir constantly until thickened, about 12 minutes.
Remove from heat and stir in coconut, pecans, and vanilla. Cool to room temperature before using.
Frost the cooled cake layers with the coconut-pecan frosting, stacking layers carefully.
Serve and enjoy your classic German Chocolate Cake!
Notes
Store leftovers covered at room temperature for up to 2 days or refrigerate for up to 4 days.