Question

J'utilise git sur un projet qui génère beaucoup de fichiers de données (résultats de simulation). Je suis " forcé " pour suivre et suivre tous ces résultats dans le même référentiel. (Ceci est une exigence difficile et ne peut pas être modifié)

Cependant, je n'en ai pas besoin. Nous avons environ 50 Mo pour le projet et 5 Go dans le référentiel.

Puis-je créer une branche, supprimer tous les résultats, vérifier cette branche et ne travailler que sur cette branche?

À quel point serait-il difficile (que devrais-je faire) pour repousser mes modifications locales dans la branche adipeuse?

Existe-t-il une meilleure solution pour se débarrasser de ces 5 Go pour mon travail?

Était-ce utile?

La solution

Si vous deviez créer une branche et supprimer les fichiers de résultats de la branche, la fusion de votre branche dans le fichier maître tenterait également de supprimer les résultats du fichier maître. Une suppression de fichier est un changement comme un autre.

Vous pourriez peut-être utiliser le support des sous-modules git pour gérer vos modifications de code en tant que sous-module du référentiel Fat. De cette manière, le référentiel fat semble contenir tout, mais vous pouvez travailler uniquement sur les petits bits de code indépendamment. Il faudra peut-être un peu de bidouillage pour que tout se passe bien.

Autres conseils

Si vous créez une branche et supprimez les fichiers indésirables d'un même commit, vous devriez être en mesure de sélectionner à nouveau tous les commits ultérieurs dans votre branche principale sans fusionner le commit qui supprime les fichiers de données.

Voir le manuel de git cherry- choisir .

Outre git cherry-pick, une autre solution consiste à exécuter git-revert sur la modification de suppression de fichier juste avant la fusion.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top