Github se compromete cambios

¿Cómo obtengo estos cambios de github en mi Mac OSX?

https://github.com/ettore/three20/commit/63d03a12a6aac60453c94c12d714965aaca810ae

Obtenga una copy del repository ettore/three20 en ese estado exacto con git :

 # Create a new (empty) repo git clone https://github.com/ettore/three20.git # Enter repo cd three20 # Checkout the commit git checkout 63d03a12a6aac60453c94c12d714965aaca810ae 

Puede get estos cambios de confirmación de github mediante ESTA API :

 GET /repos/:user/:repo/git/commits/:sha 

Un ejemplo del que diste:

 curl -i https://api.github.com/repos/ettore/three20/commits/63d03a12a6aac60453c94c12d714965aaca810ae > commit_changes 

Luego puede ver los datos totales en el file commit_changes que se generó. El formatting de este file es JSON, y encontrará los cambios en "patch" , como:

"parche": "@@ -38,6 +38,12 @@ \ n static const NSInteger kLoadMaxRetries = 2; \ n \ n \ n + n interfaz TTRequestLoader () \ n + – (nulo) connection: (NSURLConnection *) connection respuesta doReceiveResponse: (NSHTTPURLResponse *); \ n + – (vacío) connection: (NSURLConnection *) connection didReceiveData: (NSData *) datos; \ n + – (void) connectionDidFinishLoading: (NSURLConnection ) connection; \ n + end @ n \ n + \ n ////////////////////////////////////////////////// ///////////////////////////////////////////////// \ n ///////////////////////////////////////////////// ////////////////////////////////////////////////// \ n //////////////////////////////////////////////// ////////////////////////////////////////////////// / \ n @@ -100,7 +106,8 @@ – (void) deliverDataResponse: (NSURL ) URL {\ n // Estrictamente hablando, para estar realmente conforme necesita interpretar las entidades codificadas% xx hex. \ n // El [NSString dataUsingEncoding] no hace eso correctamente ………… (omisión)

Puede encontrar que es difícil de leer, pero puede formatearlo mejor con Regular Expression si puede. Aparentemente, las líneas que se agregaron / eliminaron con el inicio de + / - y el final de \n .

Puede ejecutar este command en su vim (si lo usa):

 :%s/\\n/^M/g 

éste reemplaza cada \n a una nueva línea real ( ^M se ingresa mediante Ctrl+v -> Enter ). Se ve bien ahora, pero creo que puedes hacerlo mejor. 😉

Nota: obtendrá muchos datos inútiles si sus cambios incluyen algún file binary (como un icon.png).