2011-03-14 18 views
7

xcode4 no es compatible con Perforce?xcode4 no es compatible con Perforce?

Agrego un repositorio en xcode4. Solo subversión y Git para elegir.

cómo agregar un repositorio forzado?

gracias.

+0

posible duplicado de [Perforce Checkout Macro for XCode4] (http: // stackoverflow.com/questions/5532334/forzance-checkout-macro-for-xcode4) – Almo

Respuesta

4

Recopilamos un par de servicios de Automator que le permiten enlazar teclas de acceso rápido para p4 edit/p4 agregar el archivo actualmente abierto en Xcode 4. No es ideal, pero es mejor que cambiar a terminal o p4v.

https://github.com/jcohen/xcode4-perforce-services

3

El soporte para forzado se eliminó oficialmente de Xcode 4. A menos que lo vuelvan a agregar, tendrá que resolver algo más.

+0

gracias. Parece que a Apple no le gusta forzar ... :( –

+1

La respuesta oficial de Apple desde los foros de desarrolladores parece ser "si lo deseas, archívala como una solicitud de función". No parecen estar diciendo que hay una razón específica no lo han hecho. Acceda a bugreport.apple.com y agregue su voz. – Tommy

1

La técnica que mencioné en this question también funciona para Perforce. De hecho, este fue mi uso original para DTerm.

Dado que el soporte de Perforce estaba severamente roto en Xcode 3.0 he estado usando DTerm para extraer archivos y obtener su estado durante varios años.

+0

Voy a intentar DTM. Gracias. –

8

También es útil tener en cuenta que hay un ajuste en Preferencias/Comportamientos para añadir comportamientos a acciones particulares. Uno de ellos es Desbloquear archivo, que puede unirse a un script de shell, como el que aquí:

#!/bin/sh 

RESULT=`/opt/local/bin/p4 edit ${1#file://localhost} 2>&1` 
SHRESULT=$? 
while [ $SHRESULT -ne 0 ] 
    do 
    SCRIPT="tell application \"XCode\" to display dialog \"$RESULT\" buttons {\"Try again\",\"Cancel\"} default button 1" 
    osascript -e "$SCRIPT" 
    if [ $? -ne 0 ] 
    then 
     break 
    fi 
    RESULT=`/opt/local/bin/p4 edit ${1#file://localhost} 2>&1` 
    SHRESULT=$? 
done 

exit $SHRESULT 

Con el fin de invocar p4 edición cuando el editor tiene que empezar a hacer un cambio.

Esto se ha actualizado para mostrar un cuadro de diálogo si falla la edición de p4. Esto lo intentará repetidamente si presiona "Intentar nuevamente" y se detendrá cuando presione "Cancelar", lo cual es particularmente útil si su cuenta expira en el primer caso o no está conectada a su servidor en segundo lugar. .

Desafortunadamente, parece que el código de salida no se verifica para asegurarse de que el desbloqueo tuvo éxito, y parece que Xcode cambia el archivo a R/W en este caso, así que tenga cuidado cuando aparezca un mensaje de error que o bien obtiene la edición para tener éxito o edita el archivo más tarde.

Obviamente, eso solo resuelve el problema de desbloqueo/edición de archivos, pero me parece que me gusta utilizar p4v para enviar de todos modos.

clientes

múltiples espacios de trabajo/

Para aquellos de ustedes que pueda estar utilizando varios clientes en la misma máquina (algo que estamos haciendo más de ahora que utilizamos corrientes más a menudo con Perforce), puede ser desafiante para asegurarse de que se utiliza el cliente correcto para trabajar en el archivo que está editando.

Para nosotros, encontramos la solución más fácil para usar P4CONFIG para designar un archivo de configuración de configuración específica. En nuestro caso, generalmente usamos .p4config-<user/host>, de esta manera puedo tener .p4config-laptop-gaige y elegir o registrarlo si es necesario sin interferir con el .p4config-desktop-gaige. Dentro del archivo .p4config, configuramos P4CLIENT, y eso asegura que el comando p4 sepa qué secuencia de flujo usar.

Cuestiones relacionadas