Je ne peux pas pour la vie de moi trouver une explication décente du message "[fichier]: doit être mis à jour" que git crache parfois de temps en temps. Même la FAQ officielle de git explique cela comme un TODO. Si quelqu'un pouvait expliquer A) ce que cela signifie; et B) comment y remédier, je serais extrêmement reconnaissant.
156
Réponses:
Cela signifie que vous essayez de fusionner les modifications de quelque part, mais les modifications incluent des modifications d'un fichier qui est sale (actuellement modifié dans votre arbre de travail). Vous devez valider vos modifications en suspens, ou les cacher, tirer / rebase / fusionner / tout ce que vous faites pour mettre à jour et désinstaller
la source
git svn rebase
copie de travail sale. Sauvegardez, rebase, cachez la pop, et tout allait bien avec le monde.Comme d'autres l'ont souligné, le message de mise à jour des besoins signifie que le fichier est sale ou, en d'autres termes, obsolète. Mais au lieu de faire une réinitialisation et de tout recommencer, ce qui peut être fait est simplement
git status
et ensuitegit add <file>
si c'est sur la liste modifiée . Parce que vous pouviez déjà ajouter le fichier avant, mais l'avez ensuite modifié. Cela m'est arrivé, et avec ce simple,add
j'ai résolu le problème.la source
Connectez-vous à votre serveur de production / de destination,
cd
au répertoire contenant votre application et exécutez ces deux commandes.1. Réinitialisez à la dernière version
2. Tirez les modifications
la source
Comme le dit la réponse à l'autre question liée, le message signifie simplement que vous avez des changements en suspens. Vous obtenez également cela, par exemple si vous effectuez des changements avec
git add
, puis changez d'avis et faitesgit reset HEAD file
avec l'intention de recommencer.la source
git reset HEAD file
fait apparaître le même messageCette erreur peut se produire lorsque le processus de rebase apporte des modifications supplémentaires aux fichiers qui ne se trouvent pas sur la branche cible.
Pour moi, la partie la plus délicate était le
.gitattributes
fichier dans mon dépôt. Un nouveau type de fichier binaire a été ajouté dans une autre branche mais sa gestion a été forcée en tant que fichier texte. Lorsque le fichier a été téléchargé à partir du dépôt par git, les EOL (il s'agit en fait d'octets de valeur binaire) ont été remplacés - ce qui a entraîné une différence binaire.L'ajout d'une nouvelle entrée pour gérer le nouveau type de fichier en tant que binaire et la relance de l'ensemble du processus ont résolu le problème pour moi.
la source
Dans mon cas, j'ai continué à
J'avais ces fichiers dans mon répertoire, mais ils avaient été renommés dans ma branche actuelle. Alors pour réparer, j'ai couru
et ça m'a permis de continuer
la source