Zuerst musst du für deine bestehende Nummer bei Edeka die Mitnahme (Freigabe) der Rufnummer beantragen (Verzichterklärung abgeben bzw. Opt In setzen lassen). Dafür will der Edeka Kundenservice eine Legitimation von dir. Entweder rufst du die Hotline (kostenlos) an oder du wählst eine andere Kontaktmöglichkeit. Ich würde anrufen. Normalerweise wird die Rufnummer dann sofort zur Portierung freigegeben.
Sobald die Freigabe von Edeka bestätigt ist, kannst du die o2 Freikarte bestellen. Hier nochmal der Link.
Bei der Bestellung kannst du direkt die Portierung deiner bestehenden Rufnummer beantragen.
o2 fragt dann zeitnah die Portierung bei Edeka an. Deswegen muss die Freigabe schon erfolgt sein, sonst wird die Anfrage von Edeka abgelehnt.
Nach der Bestellung und Identifizierung (Post- oder VideoIdent) bekommst du innerhalb von ein paar Tagen die Freikarte von o2 zugeschickt. Die Karte hat wie gesagt zunächst eine o2 Nummer. Nachdem die Portierung erfolgreich durchgeführt wurde (Dauer im Schnitt etwa 8 - 10 Tage), wird deine alte Rufnummer auf der neuen o2 Karte freigeschaltet.
Bei o2 gibt es immer noch 25,- € Guthaben für die Portierung, das nicht zeitlich limitiert ist, aber auch nicht ausgezahlt wird.
Bei Nichtnutzung der Karte würde ich empfehlen alle 6 Monate 1 ct auf die Karte zu überweisen um sicher zu sein, dass diese nicht deaktiviert wird. Mehr Infos dazu bei den Kollegen vom Prepaid Wiki. 