Sachverhalt:
A. Die 1968 geborene B._ war ab Juli 1999 vollzeitlich bei der Firma A._ AG angestellt und bei der Personalvorsorgestiftung N._ AG berufsvorsorgerechtlich versichert. Ab November 1999 reduzierte sie ihr Arbeitspensum auf 80 Prozent. Die Arbeitgeberin löste das Arbeitsverhältnis auf Ende Mai 2001 auf. Nach einer Arbeitslosigkeit war B._ von Oktober 2001 bis März 2002 in einem Pensum von 60 Prozent bei der Firma S._ AG beschäftigt und im Rahmen dieser Anstellung bei der Pensionskasse M._ AG versichert.
Am 22. November 2001 beantragte B._ eine Rente der Invalidenversicherung. Nach Abklärungen sprach die IV-Stelle für Versicherte im Ausland B._ bei einem Invaliditätsgrad von 75 % ab 1. Februar 2003 eine ganze Invalidenrente zu. Sowohl die Pensionskasse M._ AG (Schreiben vom 28. Februar 2005 und 7. August 2006) als auch die Personalvorsorgestiftung N._ AG (vertreten durch die Swiss Life, Schreiben vom 16. März 2005) verneinten eine Leistungspflicht mit der Begründung, die Arbeitsunfähigkeit, deren Ursache zur Invalidität geführt habe, sei schon vor Eintritt in die jeweilige Vorsorgeeinrichtung eingetreten.
B. Am 23. Januar 2007 liess B._ Klage erheben und beantragen, die Pensionskasse M._ AG sei zu verurteilen, ihr ab 15. Februar 2003 eine Invalidenrente gemäss den gesetzlichen und reglementarischen Bestimmungen nebst Verzugszins von 5 % spätestens ab dem Zeitpunkt der Klageeinreichung zu bezahlen. Die Pensionskasse M._ AG liess die Abweisung der Klage beantragen. Die Personalvorsorgestiftung N._ AG wurde zum Verfahren beigeladen. Nach Abklärungen und Durchführung eines zweifachen Schriftenwechsels hiess das Sozialversicherungsgericht Basel-Stadt mit Entscheid vom 12. März 2008 die Klage gut.
C. Die Pensionskasse M._ AG lässt Beschwerde in öffentlich-rechtlichen Angelegenheiten führen und beantragen, der Entscheid vom 12. März 2008 sei aufzuheben und die Klage gegen sie abzuweisen.
B._ beantragt die Bestätigung des angefochtenen Entscheids; ferner lässt sie um unentgeltliche Rechtspflege ersuchen. Die Personalvorsorgestiftung N._ AG schliesst sinngemäss auf Abweisung der Beschwerde. Das kantonale Gericht und das Bundesamt für Sozialversicherungen verzichten auf eine Vernehmlassung.
Erwägungen:
1. Mit der Beschwerde in öffentlich-rechtlichen Angelegenheiten kann unter anderem die Verletzung von Bundesrecht gerügt werden (Art. 95 lit. a BGG). Die Feststellung des Sachverhalts kann nur gerügt werden, wenn sie offensichtlich unrichtig ist oder auf einer Rechtsverletzung im Sinne von Artikel 95 beruht und wenn die Behebung des Mangels für den Ausgang des Verfahrens entscheidend sein kann (Art. 97 Abs. 1 BGG). Das Bundesgericht legt seinem Urteil den Sachverhalt zu Grunde, den die Vorinstanz festgestellt hat. Es kann die Sachverhaltsfeststellung der Vorinstanz von Amtes wegen berichtigen oder ergänzen, wenn sie offensichtlich unrichtig ist oder auf einer Rechtsverletzung im Sinne von Artikel 95 beruht (Art. 105 Abs. 1 und 2 BGG).
2. Anspruch auf Invalidenleistungen haben Personen, die im Sinne der Invalidenversicherung zu mindestens 50 resp. 40 Prozent invalid sind und bei Eintritt der Arbeitsunfähigkeit, deren Ursache zur Invalidität geführt hat, versichert waren (Art. 23 BVG in der bis 31. Dezember 2004 resp. ab 1. Januar 2005 gültigen Fassung). Der Anspruch entsteht gegenüber jener Vorsorgeeinrichtung, welcher die Person beim Eintritt der Arbeitsunfähigkeit, deren Ursache zur Invalidität geführt hat, angehört hatte. Ist die Invalidität erst nach Beendigung des Vorsorgeverhältnisses eingetreten, ist ein enger sachlicher und zeitlicher Zusammenhang zwischen Arbeitsunfähigkeit und Invalidität erforderlich (BGE 130 V 270 E. 4.1 S. 275).
Die Arbeitsunfähigkeit ist relevant, wenn sie mindestens 20 % beträgt (Urteil 9C_772/2007 vom 26. Februar 2008 E. 3.2; Urteil des Eidg. Versicherungsgerichts B 48/97 vom 7. Oktober 1998 E. 1) und sich auf das Arbeitsverhältnis sinnfällig auswirkt oder ausgewirkt hat. Es muss arbeitsrechtlich in Erscheinung treten, dass der Versicherte im bisherigen Beruf (BGE 134 V 20 E. 5.3 S. 27) an Leistungsvermögen eingebüsst hat, so etwa durch einen Abfall der Leistungen mit entsprechender Feststellung oder gar Ermahnung des Arbeitgebers oder durch gehäufte, gesundheitlich bedingte Arbeitsausfälle. Eine erst nach Jahren rückwirkend festgelegte medizinisch-theoretische Arbeitsunfähigkeit genügt nicht (E. 4.2 des in SZS 2003 S. 434 zusammengefassten Urteils B 13/01 vom 5. Februar 2003; Urteil des Eidg. Versicherungsgerichts B 86/01 vom 28. Juli 2003 E. 5.3). Vielmehr muss der Zeitpunkt des Eintritts der berufsvorsorgerechtlich relevanten Arbeitsunfähigkeit mit dem im Sozialversicherungsrecht üblichen Beweisgrad der überwiegenden Wahrscheinlichkeit (BGE 126 V 353 E. 5b S. 360 mit Hinweisen) echtzeitlich nachgewiesen sein. Dieser Nachweis darf nicht durch nachträgliche Annahmen und spekulative Überlegungen ersetzt werden (Urteile 9C_96/2008 vom 11. Juni 2008 E. 2.2 und B 157/06 vom 25. Oktober 2007 E. 2.2).
3. 3.1 Nach den Feststellungen der Vorinstanz ist die massgebende Arbeitsunfähigkeit während des Vorsorgeverhältnisses mit der Beschwerdeführerin eingetreten. Die Versicherte leide zwar seit Jahren an schweren psychischen Störungen. Bereits 1997 sei sie deshalb während dreier Monate stationär behandelt worden. Anschliessend habe sie ihre Tätigkeit bis Juni 1999 fortgesetzt, ohne dass eine wesentliche Arbeitsunfähigkeit bestanden habe. Zu der Jahre später eingetretenen Invalidität fehle daher ein zeitlicher Zusammenhang. Zwischen Juli 1999 und September 2001 sei die Versicherte zunächst bei der Firma A._ AG angestellt und ab Juni 2001 kurze Zeit arbeitslos gewesen. Vom 10. Oktober bis 31. Dezember 2000 sei sie aus krankheitsbedingten Gründen der Arbeit ferngeblieben. Danach habe sie ihre Tätigkeit wieder aufgenommen, bis ihr per 31. Mai 2001 wegen einer Umstrukturierung gekündigt worden sei. Damit fehle es ebenfalls an einem zeitlichen Konnex zwischen der nicht ganz dreimonatigen Arbeitsunfähigkeit und der späteren Invalidität. Nach Antritt der neuen Arbeitsstelle bei der Firma S._ im Oktober 2001 habe Dr. med. O._ am 10. Dezember 2001 eine gravierende Arbeitsunfähigkeit ausgewiesen. Die Psychiater Dres. med. I._ und H._ hätten in den Gutachten vom 27. Juni 2003 resp. 19. September 2006 den Beginn auf Februar resp. März 2002 festgesetzt und damit bestätigt, dass die relevante Arbeitsunfähigkeit während des Vorsorgeverhältnisses bei der Beschwerdeführerin eingetreten sei. Dr. med. O._ habe im Bericht vom 18. September 2007 angegeben, die Versicherte habe im November 1999 auf seine Empfehlung hin ihr Arbeitspensum auf 80 % reduziert. Dabei handle es sich um einen ärztlichen Rat, eine Arbeitsunfähigkeit sei damit aber jedenfalls nicht attestiert worden. Es sei nicht auszuschliessen, dass die Versicherte ihr Arbeitspensum freiwillig reduziert habe. Im Übrigen enthielten weder die schriftlichen Angaben im Arbeitgeberfragebogen vom 23. Januar 2002 noch die Aussagen ehemaliger Mitarbeiter vor Gericht Hinweise darauf, dass die Versicherte bereits während der Anstellung bei der Firma A._ AG arbeitsunfähig war und blieb.
3.2 Die Beschwerdeführerin rügt eine offensichtlich unrichtige Sachverhaltsfeststellung. Die invalidisierende Arbeitsunfähigkeit sei mit überwiegender Wahrscheinlichkeit nicht während des Vorsorgeverhältnisses mit der Beschwerdeführerin, sondern spätestens im Oktober 2000 eingetreten. Der zeitliche Zusammenhang der bis 31. Dezember 2000 dauernden Arbeitsunfähigkeit mit der späteren Invalidität sei durch die fünfmonatige Arbeitstätigkeit nicht unterbrochen worden. Die Versicherte sei in deren Folge nie mehr vollzeitlich tätig gewesen; sie habe ihr Arbeitspensum aus gesundheitlichen Gründen auf 80 resp. 60 % reduziert.
4. 4.1 Die Verfügung betreffend die IV-Rente wurde den beteiligten Vorsorgeeinrichtungen nicht eröffnet. Die Vorinstanz hat daher zutreffend dargelegt, dass keine Bindung an die Feststellungen der Organe der Invalidenversicherung hinsichtlich des Eintritts der invalidisierenden Arbeitsunfähigkeit besteht (BGE 130 V 270 E. 3.1 S. 273).
4.2 Eine Sachverhaltsfeststellung ist nicht schon dann offensichtlich unrichtig, wenn sich Zweifel anmelden, sondern erst, wenn sie eindeutig und augenfällig unzutreffend ist (BGE 132 I 42 E. 3.1 S. 44). Eine offensichtlich unrichtige Sachverhaltsfeststellung weist damit die Tragweite von Willkür auf (Botschaft des Bundesrates vom 28. Februar 2001 zur Totalrevision der Bundesrechtspflege, BBl 2001 S. 4338; Markus Schott, Basler Kommentar, N 9 f. zu Art. 97 BGG; Seiler/von Werdt/Güngerich, Bundesgerichtsgesetz BGG, Bern 2007, N 14 zu Art. 97 BGG). Es liegt noch keine offensichtliche Unrichtigkeit vor, nur weil eine andere Lösung ebenfalls in Betracht fällt, selbst wenn diese als die plausiblere erschiene (Urteil 9C_570/2007 vom 5. März 2008 E. 4.2). Eine Sachverhaltsfeststellung ist etwa dann offensichtlich unrichtig, wenn das kantonale Gericht den Sinn und die Tragweite eines Beweismittels offensichtlich falsch eingeschätzt, ohne sachlichen Grund ein wichtiges und für den Ausgang des Verfahrens entscheidendes Beweismittel nicht beachtet oder aus den abgenommenen Beweisen unhaltbare Schlüsse gezogen hat (BGE 129 I 8 E. 2.1 S. 9).
4.3 Von offensichtlicher Unrichtigkeit der vorinstanzlichen Sachverhaltsfeststellungen kann vorliegend nicht gesprochen werden. Zwar mögen gesundheitliche Gründe ausschlaggebend für die Reduktion des Arbeitspensums ab November 1999 gewesen sein. Es ist jedoch nicht zu beanstanden, dass die Vorinstanz mangels einer echtzeitlichen ärztlichen Bestätigung in der Arbeitszeitreduktion noch keine Arbeitsunfähigkeit erblickt hat. Eine solche ist vom 10. Oktober bis 31. Dezember 2000 und ab 10. Dezember 2001 hinlänglich nachgewiesen (E. 2.1). Dazwischen liegen fast 12 Monate, während welcher die Beschwerdegegnerin zunächst ihre bisherige teilzeitliche Arbeitstätigkeit wieder aufnahm. Sinnfällige Auswirkungen der gesundheitlichen Beschwerden auf das Arbeitsverhältnis sind trotz diesbezüglicher Abklärungen der IV-Stelle und der Vorinstanz nicht aktenkundig. Nach Auflösung des Arbeitsverhältnisses bezog die Versicherte vorübergehend als "Vollarbeitsfähige" Arbeitslosengeld, was in Bezug auf den zeitlichen Konnex ebenfalls zu berücksichtigen ist (vgl. Urteil 9C_249/2007 vom 6. Dezember 2007 E. 5.2.2 mit Hinweisen). Schliesslich fehlt für die fragliche Zeit eine echtzeitliche ärztliche Bescheinigung einer Arbeitsunfähigkeit. Die Vorinstanz hat daher nicht Bundesrecht verletzt oder den Sachverhalt offensichtlich unrichtig festgestellt, wenn sie den zeitlichen Zusammenhang zwischen der 2000 eingetretenen Arbeitsunfähigkeit und der späteren Invalidität verneint hat. Dass die insbesondere darauf und auf den Bericht des Dr. med. O._ vom 10. Dezember 2001 gestützte Feststellung, die massgebende Arbeitsunfähigkeit sei während des Vorsorgeverhältnisses mit der Beschwerdeführerin eingetreten, auf einer Rechtsverletzung beruht, ist nicht ersichtlich und wird auch nicht geltend gemacht.
Letztlich stellt die Beschwerdeführerin den bestrittenen Feststellungen des kantonalen Gerichts lediglich einen nach eigener Auffassung richtigen Sachverhalt gegenüber, was hinsichtlich der Begründungspflicht nicht genügt (vgl. Art. 106 Abs. 2 BGG; Urteil 9C_570/2007 vom 5. März 2008 E. 4.3; Urteil 4A_28/2007 vom 30. Mai 2007 E. 1.3 [in BGE 133 III 421 nicht publiziert]). Die Beschwerde ist unbegründet.
5. Dem Ausgang des Verfahrens entsprechend hat die Beschwerdeführerin die Gerichtskosten zu tragen (Art. 66 Abs. 1 BGG). Der obsiegenden und anwaltlich vertretenen Beschwerdegegnerin hat sie zudem eine Parteientschädigung zu bezahlen (Art. 68 Abs. 1 BGG). Deren Gesuch um unentgeltliche Rechtspflege ist demzufolge gegenstandslos.
Demnach erkennt das Bundesgericht:
1. Die Beschwerde wird abgewiesen, soweit darauf einzutreten ist.
2. Die Gerichtskosten von Fr. 500.- werden der Beschwerdeführerin auferlegt.
3. Die Beschwerdeführerin hat die Beschwerdegegnerin für das bundesgerichtliche Verfahren mit Fr. 2500.- zu entschädigen.
4. Dieses Urteil wird den Parteien, dem Sozialversicherungsgericht Basel-Stadt und dem Bundesamt für Sozialversicherungen schriftlich mitgeteilt.
Luzern, 11. September 2008
Im Namen der II. sozialrechtlichen Abteilung
des Schweizerischen Bundesgerichts
Das präsidierende Mitglied: Die Gerichtsschreiberin:
Borella Dormann