Je viens de modifier une succursale. Comment puis-je valider les modifications dans l'autre branche?
J'essaye d'utiliser:
git checkout "the commmit to the changed branch" -b "the other branch"
Cependant, je ne pense pas que ce soit la bonne chose à faire, car dans ce cas je crée une nouvelle branche au lieu de valider les modifications dans "l'autre branche".
Dois-je utiliser la commande suivante à la place?
git merge "the other branch"
Réponses:
git checkout -b your-new-branch
git add <files>
git commit -m <message>
Commencez par vérifier votre nouvelle succursale. Ajoutez ensuite tous les fichiers que vous souhaitez valider pour la mise en scène. Enfin, validez tous les fichiers que vous venez d'ajouter. Vous voudrez peut-être faire un
git push origin your-new-branch
suivi pour que vos modifications s'affichent sur la télécommande.la source
git status
pour voir ce qui est actuellement mis en scène et ce qui ne l'est pas.git add
etgit commit -a
?git checkout -b your-new-branch
place degit checkout your-new-branch
?Si vous n'avez pas engagé de modifications
Si vos modifications sont compatibles avec l'autre branche
C'est le cas de la question car l'OP veut s'engager dans une nouvelle branche et s'applique également si vos modifications sont compatibles avec la branche cible sans déclencher un écrasement.
Comme dans la réponse acceptée par John Brodie, vous pouvez simplement vérifier la nouvelle branche et engager le travail:
Si vos modifications sont incompatibles avec l'autre branche
Si vous obtenez l'erreur:
Ensuite, vous pouvez cacher votre travail, créer une nouvelle branche, puis afficher vos modifications de cachette et résoudre les conflits:
Ce sera comme si vous aviez effectué ces modifications après avoir créé la nouvelle branche. Ensuite, vous pouvez vous engager comme d'habitude:
Si vous avez commis des modifications
Si vous souhaitez conserver les commits dans la branche d'origine
Voir la réponse de Carl Norum avec la sélection de cerises, qui est le bon outil dans ce cas:
Si vous ne souhaitez pas conserver les commits dans la branche d'origine
Voir la réponse de joeytwiddle sur ce doublon potentiel . Suivez l'une des étapes ci-dessus, le cas échéant, puis restaurez la branche d'origine:
Si vous avez poussé vos modifications vers une télécommande partagée comme GitHub, vous ne devez pas tenter cette restauration à moins que vous ne sachiez ce que vous faites.
la source
error: Your local changes to the following files would be overwritten by checkout: ... Please commit your changes or stash them before you switch branches.
Voulez-vous rédiger une nouvelle réponse ou modifier ma réponse? Sinon, je peux le modifier moi-même.Si je comprends bien, vous vous êtes engagé
changed_branch
et vous souhaitez copier cet engagementother_branch
? Facile:la source