1 votes

Git Impossible de changer de branche en raison de modifications que je ne peux pas valider

J'ai un dépôt git qui est public sur github.

Là, j'ai un fichier local que je ne veux pas partager au public, tandis que d'autres membres de l'équipe veulent le rendre public, donc j'ai fait git update-index --assume-unchanged (ce fichier).

Maintenant, je veux passer à une autre branche. Il me dit qu'il y a des changements sur ce fichier que je dois valider ou réinitialiser. Lorsque j'essaie de valider, il me dit qu'il n'y a pas de changements à valider. Lorsque je réinitialise (avec git reset --hard), cela ne fait rien.

Que puis-je faire?

1voto

DEV Points 11

Au lieu de cela, vous pouvez mettre de côté vos modifications et les apporter ultérieurement selon vos souhaits, comme changer de branche, etc. Une fois que vous avez besoin de retrouver ces modifications mises de côté, vous pouvez les récupérer en déballant vos modifications

Vérifiez le lien Mettre de côté les modifications explique parfaitement comment mettre de côté et déballer des modifications

0voto

Matthew Clark Points 101

J'ai rencontré le même problème aujourd'hui, et j'ai trouvé une solution qui a fonctionné sur cette page (je n'ai pas réussi à trouver qui en était l'auteur pour pouvoir le créditer) :

La solution qui a fonctionné pour moi était d'utiliser --skip-worktree. Cependant, comme certains ci-dessus, j'ai eu du mal à pouvoir passer d'une branche à une autre sans avoir de problème avec git, même après avoir défini le drapeau --skip-worktree sur le fichier dont je voulais conserver les modifications locales.

...

  1. cp ~/
    • copiez le fichier contenant vos modifications locales dans un endroit sécurisé du système de fichiers
  2. git checkout
    • dans l'arborescence de travail, récupérez le fichier afin qu'il corresponde au fichier de la branche principale
  3. git update-index --skip-worktree --
  4. cp ~/ ./
    • copiez le fichier en question depuis l'endroit sécurisé dans l'arborescence de travail
  5. git diff
    • aucune modification ne devrait être affichée ; si vous poussez vers le dépôt principal, aucune modification dans ne sera incluse dans la poussée

La solution complète a commencé par git update-index --no-assume-unchanged avant de procéder aux étapes ci-dessus. Après avoir suivi ces étapes, j'ai pu changer de branches.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X