Near-field co-seismic GPS data were used to derive the slip distribution of the 12 May 2008 Wenchuan earthquake. Based on field measurements and geological observations, the earthquake is represented by ruptures on the Beichuan fault and a neighboring fault from Pengxian to Guanxian, both dipping with a decreasing angle with depth. Using a layered elastic crust model, we obtained a slip model that not only best fits the co-seismic GPS data but which also shows general consistency with the surface ruptures observed from the field survey. The slip maxima are dominant at a very shallow depth near Beichuan and Jiangyou, although the exact peak value of the slip distribution is not well constrained due to the inhomogeneous data coverage in the near-fault area. The maximum slip in our inversion is thus limited to about 9 m, as estimated from the field measurement, but no strict restriction is applied to the slip direction, i.e., the rake angle. The slip model yields a moment magnitude that is very close to M w = 7.9, which is the estimate based on teleseismic observations. Near the hypocenter, the slip exhibits reverse behavior. The major rupture near Beichuan involves both right-lateral strike-slip and reverse components. Slip on the secondary fault is dominated by the reverse component with a maximum of approximately 2-3 m.