Je vais archiver un ancien projet énorme contenant beaucoup de déchets. J'espère que je n'en aurai plus jamais besoin, mais je veux mettre toutes les choses importantes sous contrôle de la version. En raison du chaos du projet, il n'est pas facile de dire quelles sont les sources et ce qui peut disparaître (il n'y a pas de Comment puis-je énumérer les fichiers à être commis (ou à mettre en scalne) avec leur taille? p>
Je pourrais écrire un script ou autre chose, mais j'espère une solution plus simple. Je travaille sous Cygwin et la seule interface graphique disponible est Makefile code>, aucun
propre code>, rien). Je voudrais donc y mettre presque tout et considérez uniquement les fichiers les plus importants d'exclusion. em> p>
Git GUI code> qui ne montre pas la taille des fichiers. Sinon, ce serait parfait pour ce dont j'ai besoin. Sup> p>
3 Réponses :
Je ne sais pas à propos de Git, mais si vous utilisez mercurial, vous pouvez utiliser une combinaison de:
à une première approximation, Mais vous auriez dû utiliser le contrôle de la version bien avant d'atteindre le point de retirer le projet. P> du -sk. code> en haut de l'arborescence de répertoire vous donnera l'espace nécessaire. Après avoir fait
git gc code>, il pourrait s'agir d'un surestimé. P>
Vous pouvez essayer ceci. Il trouve tous les fichiers de plus de 1 m et les trie du plus grand au plus petit. Les tailles de fichiers imprimées sont en octets: sortie: p> mise à jour: boucle sur les fichiers renvoyés par trouver Code> et imprimer leur
git code> Statut: p>
Mais ça ne me dis pas s'ils sont déjà suivis. Il y a beaucoup de gros fichiers là-bas, certains d'entre eux sont importants, certains d'entre eux déjà suivis, gros chaos ...
Oups, ça sonne jolie chaotique! J'ai mis à jour la réponse, espérons que cela est plus utile.
Cela semble beaucoup mieux, sauf que git ls-files -t -t code> semble imprimer uniquement pour tous les fichiers non traqués. La page de l'homme m'a conduit à
Statut de git --porcelain code> qui imprime
?? code> pour ces fichiers à moins qu'ils ne soient ignorés. Un simple
grep code> et c'est résolu.
"Mais je veux mettre toutes les choses importantes sous la version de contrôle" - les choses importantes sont sûrement sous contrôle source?
Non, c'est un projet mono-homme par quelqu'un qui n'utilise pas VC du tout. Comme je travaille dessus, j'ai utilisé SVN pour mes changements uniquement, la plus tard, la convertit à Git et que je souhaite maintenant ajouter tous les autres fichiers éventuellement importants, donc c'est sûr quelque part au cas où ...