2015-11-10 1 views
0

Existe-t-il une option équivalente de la ligne de commande in perforce (P4) pour obtenir le nom de la fonction dans le code diff? Je dois avoir un nom de fonction correspondant à chaque segment de diff de code dans le fichier diff généré. Cela m'aidera à naviguer vers l'appel de fonction à partir du code-diff en utilisant CTAGS.Comment obtenir le nom de la fonction C dans le code diff en utilisant la commande "P4 diff"?

+0

La sortie diff est orientée ligne; c'est-à-dire qu'il décrit quelle (s) ligne (s) est (sont) différente (s) entre les deux versions étant diff'd. Compte tenu de ces numéros de ligne, vous pouvez localiser cette position dans le fichier: par exemple, utilisez la fonction "aller à la ligne numéro N" de votre éditeur de texte. Ensuite, vous verrez dans quelle fonction vous êtes. –

Répondre

1

Notez cet extrait de p4 help diff:

Si la variable d'environnement P4DIFF $ est définie, le programme diff spécifié est lancé à la place du client par défaut Perforce diff.

Il arrive que si P4DIFF comprend des espaces, p4 traite comme un nom de l'exécutable avec des arguments, de sorte que vous pouvez faire:

export P4DIFF="diff --show-c-function"

(ou un équivalent pour quelque shell console que vous utilisez) puis lorsque vous exécutez p4 diff, vous devez voir les noms de fonctions pour le code basé sur C.

+0

Merci jamesdlin! Je demandais à propos de P4, votre suggestion a été utile, elle a résolu mon problème. Merci., –