Macbook doesn't display on external screen until after I log in (Yosemite). How to fix?
To Fix this issue do the following while your external monitor is plugged into the MacBook:

Open Displays in System Preferences
Click on Arrangement at the top of the window
If Mirror Displays is checked, uncheck it
The position of the two displays should now be shown in the Displays Window
One of them will have a white bar at the top.  This is probably your MacBook
Click on each display in the window and you will see the relevant display framed in red.
If the white bar is at the top of your MacBook display, move it to the top of the external monitor display.
Then click Mirror Displays again.
This should resolve the issue