¿Cómo puedo elegir sobrescribir el repository remoto con confirmaciones locales?

Básicamente, debido a events fuera de mi control, mi repository remoto se movió; mientras tanto, trabajé mucho en mi copy local y ahora realmente solo quiero sobrescribir todo en el repository remoto con mis files locales.

Sin embargo, no soy capaz de hacer esto. Lo más cerca que puedo estar es tirar y unirme, pero luego quiere llevarme a través de un complicado process de fusión. No quiero fusionarme. Quiero sobrescribir No necesito una nueva sucursal, básicamente, solo quiero un nuevo comienzo.

El repository remoto está en unfuddle.

Puede eliminar la twig y volver a crearla, digamos que la twig que desea sobrescribir es dev :

Eliminar la twig en su host remoto (github)

 git push origin :dev 

Entonces simplemente empuja tu desarrollador de nuevo:

 git push origin dev 

Utilizo Github para el alojamiento, no estoy familiarizado con unfuddle, pero creo que también funcionará para el unfuddle. 🙂


Tal como mencionó @melee, también puedes usar

 git push origin dev -f 

(no estoy seguro de si -f es válido, pero --force está bien)

 git push origin dev --force 

para obligar a sobrescribir la twig. Recuerdo que lo hice antes. Gracias @melee. 🙂

Cómo hacer esto para la twig principal, sin extraer datos del repository remoto:

  1. Crea una nueva carpeta, init git, agrega repository remoto – ¡no extraigas ni recuperes!

    mkdir clean_repo

    git init

    git remote add origin <remote-repo>

  2. crear (y cambiar a) twig local vacía, agregar, confirmar y enviar un file de testing a esto.

    git checkout test

    echo "test" > test

    git add .

    git commit -m "adding test"

    git push origin:test

  3. En github / bitbucket, cambie la twig pnetworkingeterminada a la nueva twig

  4. En local, cambia a la twig principal, confirma y presiona a repos / sucursal remoto

    git checkout -b master

    git push origin --mirror

No soy un experto en el ecosistema github, pero ¿por qué no puedes simplemente restablecer tu URL de repository remoto?

 git remote set-url origin /path/to/your/new/remote/repository/url 

Puede que también necesite configurar su twig de flujo ascendente mirando aquí .

para más información sobre el git remote... , mira aquí .