54 votes

Les fichiers modifiés dans une branche git débordent dans une autre branche

Je travaille sur un dépôt git avec une branche principale et une autre branche de sujet. J'ai basculé sur la branche de sujet et modifié un fichier. Maintenant, si je passe à la branche principale, ce même fichier est affiché comme modifié.

Par exemple:

état de git dans la branche git-build :

# Sur la branche git-build
# Modifications à valider :
#   (utilisez "git reset HEAD ..." pour désindexer)
#
#       modifié:   cvsup_current
#

Passer à la branche principale

[root@redbull builder_scripts (git-build)]# git co master
M       builder_scripts/cvsup_current
Basculé sur la branche "master"

état de git dans la branche principale :

[root@redbull builder_scripts (master)]# git status
# Sur la branche master
# Modifications à valider :
#   (utilisez "git reset HEAD ..." pour désindexer)
#
#       modifié:   cvsup_current
#

Pourquoi le fichier est-il indiqué comme modifié dans la branche principale alors qu'il a été modifié dans la branche git-build ?

Je pensais que les branches étaient indépendantes les unes des autres et que lorsque je passais d'une branche à une autre, les modifications ne se "déversaient pas" d'une branche à une autre. Donc, évidemment, je rate quelque chose ici.

Est-ce que quelqu'un a une idée?

1voto

mirekphd Points 11

Dans mon expérience, ce problème de "débordement" se produit parce que git ne protège pas les fichiers "non suivis" lors d'un git checkout (seuls les fichiers suivis mais non validés seraient protégés, c'est-à-dire que l'utilisateur serait contraint de les git commit avant qu'un git checkout ne soit autorisé vers une autre branche).

Si vous revenez à la branche d'origine qui a créé ces fichiers (et les "désuivre"), ces fichiers redeviennent "non suivis" et peuvent être ajoutés avec git add ou supprimés avec git rm.

Pour moi, il semble s'agir d'un bug : même les fichiers "non suivis" devraient être protégés contre git checkout.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X