2012-01-20 43 views
42

que estaba leyendo en: https://wiki.diasporafoundation.org/Git_workflow#Rebase_your_development_branch_on_the_latest_upstream¿Qué significa la ayuda de 'git remote add upstream'?

He aquí un extracto:

su repositorio al día

Con el fin de obtener las últimas actualizaciones de la rama de desarrollo hacen una vez que una configuración para establecer el principal repo GitHub como un control remoto por entrada:

$ git remote add upstream git://github.com/diaspora/diaspora.git 

Rebase su rama de desarrollo en la última corriente ascendente

Para mantener su rama de desarrollo actualizada, vuelva a establecer los cambios en del estado actual del maestro de nivel superior. Consulte el ¿Qué es git-rebase? sección a continuación para aprender más sobre el rebase.

Si ha configurado una rama aguas arriba como se detalló anteriormente, y una rama de desarrollo denominado 100 retweets-corrección de errores, que le actualizar aguas arriba, actualización de su maestro local, y rebase su sucursal de ella de este modo:

$ git fetch upstream 

$ git checkout master 

$ git rebase upstream/master 

$ git checkout 100-retweet-bugfix 

[asegurarse de que todo se ha comprometido como sea necesario en la rama]

$ git rebase master 

¿por qué es la adición de un "aguas arriba remoto se necesita en este caso? Coudn't que acabo de hacer:

$ git checkout master 

$ git pull origin master 

$ git checkout 100-retweet-bugfix 

[asegúrese de que toda comprometida como sea necesario en la rama]

$ git rebase master 
+0

debes hacer 'git remote add' not' git add remote' ... – Honey

Respuesta

52

El wiki está hablando desde un punto de vista de repo bifurcado. Usted tiene acceso a tirar y empujar desde el origen, que será su bifurcación del repositorio principal de la diáspora. Para obtener cambios de este repositorio principal, agrega un control remoto, "ascendente" en su repositorio local, apuntando a este original y extrayendo de él.

Así que "origen" es un clon de su repositorio de horquilla, desde el que empuja y tira. "Upstream" es un nombre para el repositorio principal, desde donde tira y mantiene actualizado un clon de su horquilla, pero no tiene acceso de empuje a él.

+1

¡Gracias @manojlds! Tengo una pregunta de seguimiento, luego aquí: [link] (http://stackoverflow.com/questions/8948964/git-rebase-master-then-push-origin-branch-results-in-non-fast-forward-error) – ben39

13

Esto es útil cuando usted tiene su propio origin que no es upstream. En otras palabras, puede tener su propio repositorio origin que realiza cambios de desarrollo y locales en y luego ocasionalmente fusiona los cambios upstream. La diferencia entre su ejemplo y el texto resaltado es que su ejemplo asume que está trabajando con un clon del repositorio ascendente directamente. El texto resaltado asume que estás trabajando en un clon de tu propio repositorio que, presumiblemente, era originalmente un clon de subida.

+0

¡Gracias @smparkes! fue realmente útil. Tengo una pregunta de seguimiento, luego aquí: [link] (http://stackoverflow.com/questions/8948964/git-rebase-master-then-push-origin-branch-results-in-non-fast-forward-error) – ben39

2

creo que podría ser utilizado para "retroactivamente se bifurcan"

Si usted tiene un repositorio git, y ahora han decidido que debería bifurcada otra cesión temporal. Retroactivamente le gustaría que se convierta en una bifurcación, sin interrumpir al equipo que utiliza el repositorio al necesitarlos para apuntar a un nuevo repositorio.

Pero podría estar equivocado.

+0

¿Qué valor trae esta respuesta después de que la pregunta fue respondida hace 5 años? Y todavía no está seguro de la respuesta correcta ... –

+0

@MaciejJureczko No estoy solo preguntándome cómo "tenedor retroactivo", si esta pregunta/respuesta está discutiendo cómo (lo que creo que es, pero estoy no es seguro). Entonces esta pregunta podría usarse como respuesta a otras preguntas. https://stackoverflow.com/questions/30472771/marking-a-repo-as-a-fork-in-github-after-the-fact ... si esta es la forma de tenedor retroactivo, ahora puede ser encontrable con esos términos de búsqueda. Me tomó un tiempo pensar que tal vez la adición de un repositorio en la parte superior podría ser lo que estaba buscando. Si OP fuera la única audiencia, no archivaría preguntas de "hace 5 años". – Onceler

Cuestiones relacionadas