Tengo mi twig master
de mi proyecto. Y también tengo una twig, adding-charts
, que tiene muchos cambios, nuevos files, modificaciones, etc. de la twig master
. Deseo crear una nueva new-feature
nueva twig que haya rastreado los files que son diferentes de las dos twigs pero que aún no se han confirmado.
Puedo ver las diferencias haciendo … git diff --name-status master adding-charts
Y lo que esperaría es tener una nueva sucursal en la que se muestren en "Cambios para comprometerse" o "Archivos sin seguimiento" al hacer el git status
. Mi pensamiento es de esta manera que puedo modificarlos y volver a asignarlos / fusionarlos correctamente a la twig master
.
Si este no es el process correcto para realizar los cambios, házmelo saber también. Gracias
Editar
Entonces, he usado git antes en una forma muy básica, y al explicarlo, tal vez tendrá más sentido cómo llegué a donde estoy y lo que trato de hacer.
Por lo general, me gustaría trabajar en una function y agregar / confirmar / presionar desde mi twig master
. Si tenía alguna function en la que estaba trabajando, simplemente no la agregaba ni la confirmaba en el momento en que deseaba publicar un cambio en mi aplicación web, y continuaría trabajando en ellas hasta que se completaran.
Recientemente, mi máquina virtual invitada comenzó a tener problemas, por lo que confié todo en mi repository con un nuevo nombre de twig y lo envié a mi count de github. Creo que lo cloné de nuevo a la nueva máquina virtual que construí recientemente. Pensé que era un buen momento para desarrollar un nuevo flujo de trabajo. He leído en cualquier momento que deseo agregar una nueva function que debería crear una nueva y luego combinarla / publicarla una vez que esté completa. Así que eso es lo que pretendo hacer para seguir adelante, pero estoy tratando de limpiarlo ahora. adding-charts
fue una twig que incorporó algunas características nuevas en realidad.
Yo haría esto en su lugar (pero, por favor, lea todos los pasos antes de comenzar):
git stash
o git commit
podrían ayudarte aquí) git rev-parse adding-charts
le dará una buena reference git checkout adding-charts; git rebase master
) git reset master
para get todas las modificaciones en el área de preparación. (Tenga en count que esto arrojará todos sus posts de confirmación, puede getlos más tarde, pero no los includeé aquí.) Siéntase libre de git add
git reset HEAD -- filename
, git reset HEAD -- filename
y luego git commit
tanto como desee. Comience con los files que ya existen en el maestro (es decir, el git status
y busque los files que no tengan el prefijo "file nuevo"). git checkout master
y git merge XYZ
donde XYZ es la última confirmación en la twig de agregar charts con cambios solo en sus files antiguos. git log -p adding-charts
puede ayudarlo a encontrar XYZ aquí git push master
(supongo que el motivo de su pregunta es seguir trabajando en agregar charts mientras comparte los cambios en el maestro) git checkout adding-charts
git rebase master
git checkout adding-charts
y git rebase master
Si algo sale mal o cambias de opinión:
git rebase --abort
si estás en medio de una rebase git checkout adding-charts; git reset --hard XYZ
git checkout adding-charts; git reset --hard XYZ
donde XYZ es el resultado de git rev-parse
en el paso 2 anterior. Esto hará que todo este process se deshaga.