Dans Perforce, quelle est la commande pour se connecter à un autre port lors du changement d'utilisateur du client?
-
11-07-2019 - |
Question
Quel est l'équivalent en ligne de commande de "Changer d'utilisateur du client de port" " comme dans le client gui de p4win?
Je suis déjà connecté sous un port, mais je tente maintenant de me connecter à un port différent sur le même serveur afin d'accéder à un dépôt de fichier de contrôle de source distinct. Je suppose que cela impliquerait l’utilisation de:
p4 login
Cependant, la lecture de "l'aide" pour "la connexion" n'affiche pas une option permettant de spécifier le numéro de port. Le nom d'utilisateur et le nom du client resteraient les mêmes, mais il suffirait de changer le numéro de port.
La solution
La variable de configuration P4PORT stocke le nom du serveur Perforce et le numéro de port auquel se connecter. Vous pouvez définir cette valeur en tant que variable d'environnement ou, si vous utilisez Windows, dans le registre à l'aide de 'p4 set':
p4 set P4PORT=perforce:1669
Pour voir quelle est la valeur actuelle de P4PORT:
> p4 set P4PORT
P4PORT=perforce:1669
Autres conseils
Si vous souhaitez le faire de manière générique pour toute commande P4, vous pouvez trouver la forme générale via "Aide de p4 aide".
En un mot,
p4 -p <your port> login
fera ce que vous avez demandé. Dans l'aide à l'utilisation, notez que vous pouvez spécifier la plupart des éléments de la ligne de commande, tels que les spécifications du client, le nom d'utilisateur, le mot de passe, etc.
E.g:
p4 set P4PORT=1666
De l'aide:
C:\> p4 help environment
Environment variables used by Perforce:
Variable Defines For more information see
-------- ------- ------------------------
P4AUDIT name of server audit file p4d -h
P4CHARSET client's local character set p4 help charset
P4COMMANDCHARSET client's local character set for
command line operations p4 help charset
P4CLIENT name of client workspace p4 help client
p4 help usage
P4CONFIG name of configuration file Command Reference Manual
P4DIFF diff program to use on client p4 help diff
P4DIFFUNICODE diff program to use on client p4 help diff
P4EDITOR editor invoked by p4 commands p4 help change, etc
P4HOST name of host computer p4 help client
p4 help usage
P4JOURNAL name of server journal file p4d -h
P4LANGUAGE language for text messages p4 help usage
P4LOG name of server log file p4d -h
P4MERGE merge program to use on client p4 help resolve
P4MERGEUNICODE merge program to use on client p4 help resolve
P4PAGER pager for 'p4 resolve' output p4 help resolve
P4PASSWD user password passed to server p4 help passwd
P4PORT port client connects to p4 help info
or server listens on p4d -h
P4ROOT server root directory p4d -h
P4TARGET target server for proxy Command Reference Manual
P4TICKETS location of tickets file Command Reference Manual
P4USER user name p4 help usage
PWD current working directory p4 help usage
TMP, TEMP directory for temporary files Command Reference Manual
See 'p4 help set' for details specific to Windows. The syntax for
setting an environment variable depends on the OS/shell. Note that many
shells allow the setting of shell variables separate from environment
variables - Perforce cannot see the shell variable, only the environment
variable.
If you are a typical user then the only variables of interest are
$P4CLIENT, $P4PORT and $P4PASSWD.
C:\> p4 help set
set -- Set variables in the registry (Windows only)
p4 set [ -s -S service ] [ var=[value] ]
'p4 set' sets the registry variables used by Perforce on Windows
platforms. Normally, the variable 'var' is set to 'value'.
If 'value' is missing, the variable 'var' is unset. Without
any arguments at all, 'p4 set' list variable settings.
The -s flag causes 'p4 set' to set variables for the whole system
rather than for the user. You must have NT administrator powers
to use this.
The -S service flag causes 'p4 set' to set variables for the named
service. You must have NT administrator powers to use this.
Currently, registry variable entries may be overridden by environment
variables and (in some cases) flags on the command line.
See 'p4 help environment' for a list of environment/registry variables.
Vous pouvez utiliser un fichier de configuration pour définir le port auquel Perforce se connecte pour chaque projet.
Créez tout d'abord un fichier texte contenant les variables de configuration Perforce que vous souhaitez définir pour le projet. Par exemple, pour définir la valeur de P4PORT, le contenu du fichier devrait ressembler à ceci:
P4PORT=hostname:1234
Attribuez un nom descriptif au fichier, par exemple .p4config , puis placez-le à la racine du dossier du projet. Faites cela pour chacun de vos projets, en modifiant les variables si nécessaire. Utilisez le même nom de fichier.
Définissez ensuite la valeur de P4CONFIG sur le nom de vos fichiers de configuration, par exemple.
p4 set P4CONFIG=.p4config
Cela forcera Perforce à rechercher les valeurs de configuration dans un fichier de ce nom dans le répertoire actuel ou dans tout répertoire parent. Ainsi, vous ne devrez pas modifier vos variables de configuration manuellement à chaque changement de projet.