tipos - Cómo ver la diferencia de un proyecto de github bifurcado
git ver archivos modificados (4)
He bifurcado un proyecto en github y necesito tener una serie de cambios que realicé desde que bifurqué, en formato diff.
Si te preguntas, he descifrado Apache httpd y estoy cambiando algunos códigos en el núcleo. Actualmente no estoy comprometiendo ningún cambio, ejecutando git diff, y uso su salida como un parche contra las fuentes httpd de vainilla en un proceso de creación de RPM. Está, por supuesto, mal, pero no sé cómo hacerlo correctamente. Todo lo que sé es que necesito una diferencia al final.
Esta es una pregunta antigua, pero acabo de encontrar un método muy bueno para obtener un archivo de parche o diff directamente de Github .
Cuando está en su horquilla, hay un enlace "Comparar" . Usando eso estás llegando a la vista de comparación.
Ejemplo
https://github.com/luisgoncalves/xades4j/compare/master...beat2:master
Ahora puedes agregar manualmente ".diff" o ".patch" al final de esta URL , y obtienes el archivo directamente en tu navegador.
Ejemplo
https://github.com/luisgoncalves/xades4j/compare/master...beat2:master.diff
Obtener el punto padre / horquilla sha1: git merge-base master HEAD
Obtener diff: git diff <sha1>
O en un solo comando: git difftool $(git merge-base master HEAD)
Lo que es lo mismo que el comando de azúcar: git diff master...HEAD
Si presionas una rama que rastrea el repositorio "ascendente" a tu repositorio, también puedes ver la diferencia en github en sí mismo:
git remote add mainRepo github_url
git fetch mainRepo
git branch main_repo_master mainRepo/master
git push origin main_repo_master
Entonces véalo en línea así:
https://github.com/rdp/mplayer-svn/compare/master ... main_repo_master
ref: http://betterlogic.com/roger/2012/04/github-compare-commits
- Agregue el repositorio original de GitHub (el que ha descifrado) como remoto en su repositorio local.
(git remote add mainRepo github_url
) -
git fetch mainRepo
para obtener los últimos cambios de ese "mainRepo" original. -
git log HEAD..mainRepo/master
le mostrará todos sus cambios entre los últimos en mainRepo master branch y su rama actual.
git diff HEAD..mainRepo/master
lo mostraría en formato diff.
En learn.GitHub :
git diff mainRepo/master...HEAD
mainRepo
todos sus cambios ya que ha bifurcado desde mainRepo
:
Esto no comparará la última instantánea de la rama ''maestra'' y la última instantánea de ''dev''; en su lugar, comparará el ancestro común de ambos con ''dev''. Eso te dirá qué ha cambiado desde el punto de bifurcación.