2010-08-06 4 views
6

J'ai un dossier dans ClearCase qui contient une grande liste de rapports.
J'ai vérifié tous les rapports parce que j'ai besoin de faire un changement radical.
J'ai modifié un ensemble de rapports et je souhaite maintenant déployer cet ensemble.Recherche de fichiers modifiés dans un dossier ClearCase

J'aurais probablement dû vérifier les fichiers de rapport un à la fois et ensuite déployé chaque fois que j'ai fini.
Mais, puisque je ne l'ai pas fait, existe-t-il un moyen d'inspecter le dossier ClearCase qui contient la liste des rapports extraits pour voir ceux qui ont changé et ceux qui ne l'ont pas été?

Répondre

6

Vous pouvez demander cleartool pour une diff avec la version précédente:

cleartool lsco -r -cvi -fmt "diff -options \"-hea\" -pred \"%n\"\n" | cleartool | grep ">>>" 

Cela vous donne la liste des actuellement vérifiés-out modifiés fichiers.

Note: supprimer l'option « -r » si vous voulez que les fichiers de check-out du répertoire courant (et non ses sous-répertoires)

+0

@VonC .... intéressant ... merci. Cependant, je suis incapable de dire où dans la commande ci-dessus j'insérerais le chemin à ma vue. J'ai reçu l'erreur "Impossible de déterminer la vue pour '.': Pas un objet ClearCase" – MikeTWebb

+0

@Mike: vous devez être dans le répertoire où se trouvent vos rapports. (ce qui signifie que vous serez dans votre vue). Vous pouvez faire un clic droit sur le dossier ClearCase, et demander des "propriétés d'élément" afin de copier le chemin complet de ce dossier dans une session DOS. – VonC

+0

@VonC ... génial. Je vais essayer et donner une réponse ... OK, j'ai fait un essai et on dirait qu'il a retourné une liste contenant tous les rapports extraits ... pas seulement ceux qui ont changé. Des idées? Ah ... je viens de découvrir mon erreur. J'ai enlevé le morceau grep de la ligne de commande. J'exexite maintenant cleartool lsco -r -cvi -fmt "diff -options \" - hea \ "-pred \"% n \ "\ n" | cleartool et ça a bien fonctionné !!! – MikeTWebb

1

Vous pouvez configurer une seconde vue avec une spécification de configuration identique la vue avec les fichiers extraits. Une fois que vous avez configuré la deuxième vue, vous pouvez comparer le même répertoire dans chaque vue avec un outil de différence (comme WinDiff). Cela liste tous les fichiers qui ont été modifiés.

Il n'est pas natif de ClearCase, mais il devrait donner les résultats que vous recherchez.

+0

@Brainimus ... merci! Devrais-je configurer la deuxième vue avant de vérifier les fichiers du répertoire initial? – MikeTWebb

+0

@Brainimus .... J'ai implémenté votre solution. Il a bien fonctionné – MikeTWebb

+1

@Mike: si vous faites cela, n'oubliez pas d'utiliser 2 * vues dynamiques *, beaucoup plus facile et plus rapide à mettre en place pour ce genre si l'utilisation (consultation de fichiers) – VonC

0

J'ai également trouvé une solution. J'ai sélectionné mon dossier ClearCase et j'ai cliqué sur "Find Checkouts". Cela a montré mon énorme liste de fichiers de rapports qui ont été extraits. J'ai ensuite sélectionné tous et sélectionné "Check In". J'ai laissé l'option "Check in si identique à la version précédente" décochée. J'ai ensuite sélectionné "OK" pour l'archivage. Tous les fichiers modifeid ont été archivés et les fichiers non modifiés sont restés extraits. Cela m'a donné mon delta de fichiers modifiés par rapport aux fichiers non modifiés.

3

Dans ClearCase (ou Explorer si l'intégration est activée), cliquez avec le bouton droit sur la base de l'arborescence et choisissez "Rechercher les fichiers modifiés". Cela retournera une liste de TOUS les fichiers qui ont été modifiés, et qui font partie du repo (c'est-à-dire qu'il ne retournera pas la liste des fichiers privés).

Si vous voulez savoir tous les fichiers - extrait, modifié et privé - la seule façon que je connaisse est d'utiliser cleartool à partir de la vue:

cleartool ls -r 

Si vous voulez plus (ou moins) info sur les fichiers, vérifiez les docs pour l'option -fmt (qui ne fonctionne pas avec ls, mais fonctionne avec describe), et vous pouvez créer une commande qui vous donnera exactement ce que vous voulez (ça va prendre quelques expérimentations jusqu'à ce que vous en ayez le coup).

REMARQUE: "Rechercher les fichiers modifiés" est uniquement disponible dans l'interface graphique à partir de la base de l'arborescence; Ailleurs, votre seule option est "Find Checked Out Files" (ce qui porte à confusion, c'est le moins qu'on puisse dire).

Questions connexes