J'ai déjà posté cette question stackoverflow mais je n'ai pas eu de réponse: click
Depuis que j'ai ce problème sur Ubuntu, je republie ma question ici. J'espère que ce n'est pas interdit.
Je développe une application (Qt) qui devrait fonctionner sous Windows et Linux. Je souhaite donc pouvoir développer sous Windows et Linux également.
J'ai donc stocké mon projet (en tant que git repo) sur une partition NTFS que je monte sous Linux (Ubuntu 13.10). Pour éviter le problème des droits de l'exécutable compilé, j'ai défini le répertoire de construction de l'ombre dans mon dossier personnel sous Linux.
Cette approche a bien marché jusqu'à présent. Mais il y a certains effets qui m'inquiètent: si je stocke des fichiers modifiés (avec smartgit), smartgit ne signifie pas que je les ai mis en scène. Ils sont toujours affichés comme non mis en scène.
Même chose lors de la validation: après la validation, les modifications validées sont toujours affichées comme si elles n'étaient pas validées. Mais dans le journal, je peux voir qu'ils sont engagés. La fermeture d’une réouverture du référentiel "résout" ce problème ou constitue au moins une solution de contournement.
Mais je crains que je casse mon référentiel en l’utilisant sur une partition NTFS sous Linux. Ou n'y a-t-il aucun risque que mon référentiel soit corrompu un jour en l'utilisant de cette façon?
cela se produit à cause du mode fichier. Windows et Linux écrivent les fichiers différemment, donc pour les deux, les fichiers sont constamment "nouveaux". tapez ceci dans votre répertoire:
git config core.filemode false
et les modifications du système de fichiers disparaîtront de votre index.