func_ge_door is a variant of func_door that offers a large amount of additional behavior and usage options. Its main advantage is that it accelerates/decelerates during travel instead of having a fixed velocity. It also allows players to change its move direction while in operation, giving players a bit more control and allowing them to potentially block off pursuers or keep a key door open. It also supports partnering, in which a collection of doors can sync their behavior, very useful for double doors.
Unless there's a specific reason, every door in a map should be func_ge_door. It provides a more enjoyable gameplay experience than the traditional func_door does, and offers way more features if they happen to be needed. Its usage is mostly identical to func_door, though of course the addition of acceleration requires some extra tweaking to get the ideal door behavior for your map.