Cómo excluir un directory en mapeo de Stream en p4v

Estoy usando el cliente visual para forzar y quiero excluir un directory del espacio de trabajo. Antes de las transmisiones, simplemente navegaba a mi espacio de trabajo, buscaba la carpeta en el tree y la excluía (y encontré esta solución en varias otras preguntas relacionadas que he encontrado). Sin embargo, ahora que estoy usando una transmisión, no me dejará hacer esto, tengo que editar el mapeo de transmisión aparentemente.

Así que traté de agregar esta línea al cuadro reasignado al editar la transmisión:

-//NumberPlus/current/Library/... //nplus-mainline/current/Library/ 

Sin embargo, acabo de recibir un error:

 Error in stream specification. Error detected at line 24 Null directory (//) not allowed in '-//NumberPlus/current/Library/...'. 

EDITAR: estoy en Windows 8.1, para aclararme.

Si la carpeta que desea excluir es específica de su máquina, la configuration local de P4IGNORE es la forma más fácil de excluir que se agregue al depósito.

http://www.perforce.com/blog/120214/new-20121-p4ignore

Configuraría P4IGNORE con un nombre como "p4ignore.txt", crearía un file con ese nombre y agregaría "Bibliotecas" a él; los subsiguientes commands "p4 add" omitirán las routes encontradas en el file P4IGNORE, por lo que esos files nunca se agregará al depósito.

Si esto es algo que va a ser común a todos los espacios de trabajo de esta secuencia (por ejemplo, es un artefacto de construcción que todo el mundo va a generar y nadie debe verificar), lo que quiere hacer es agregar una "exclusión" a la secuencia Rutas (esto lo excluirá tanto de las vistas de la sucursal como de las vistas del cliente generadas por esa stream). P.ej:

 Paths: share ... exclude Libraries/... 

El "excluir bibliotecas / …" es básicamente lo mismo que la línea de exclusión que agregaría a la vista del cliente, excepto que lo especifique como una ruta relativa, no necesita especificar ambos lados de la asignación, y el "-" está implícito en el tipo "excluir". El tipo de "reasignación" es si desea conservar esos files, pero en una location de depósito diferente, lo que no suena aplicable aquí.

Más información sobre la definición de vistas de flujo: http://www.perforce.com/perforce/doc.current/manuals/p4v/streams_views.html

No puede simplemente editar las asignaciones para el espacio de trabajo de su cliente si se cambia a una transmisión en particular. El objective de las secuencias es que la asignación de su espacio de trabajo se genera directamente a partir de la definición de la secuencia. Entonces esa es una característica.

No está del todo claro si

  • no desea el directory en la transmisión, o
  • es válido tener el directory en la transmisión, pero no desea sincronizarlo con su estación de trabajo, o
  • desea que el directory esté sincronizado con su estación de trabajo, pero desea que el directory tenga diferentes contenidos (por ejemplo, de alguna otra transmisión que tenga una versión diferente de la biblioteca).

Sin embargo, para todas estas situaciones, sospecho que el mejor path a seguir es definir una nueva secuencia secundaria de tu transmisión actual.

Deberá definir las asignaciones de ruta utilizando los types de mapeo "compartir", "excluir", "aislar" e "importar".

Por ejemplo, si simplemente no desea el directory Library / …, lo "excluirá" de su padre.

Entonces esa transmisión simplemente no tendrá ese directory, y (por supuesto) tampoco estará en su estación de trabajo cuando se sincronice con la transmisión.

Si deseaba tener una copy diferente del código en el directory Library / … para que se convirtiera en un punto de divergencia intencional con respecto al padre, lo "aislaría" de su padre para enviar su propia versión personalizada. o "importarlo" de otra secuencia para usar el directory Library / … de esa secuencia en su lugar.

En cualquier caso, el directory sería parte de la transmisión y se sincronizaría con su estación de trabajo, pero el contenido de ese directory diferiría de los contenidos que se usan en la secuencia principal (la forma exacta en que diferir está bajo su control, ya que define la secuencia en consecuencia).

La documentation y algunos ejemplos están aquí: http://www.perforce.com/perforce/doc.current/manuals/p4v/streams_views.html y aquí: http://www.perforce.com/sites/default/files/pdf /Streams-ebook.pdf

Creo que he resuelto esto. Para ser claro, quería que el control de versiones ignorara completamente la carpeta. Estoy usando p4connect con Unity y sigue queriendo include cosas innecesarias en mi depósito.

Todo lo que tuve que hacer fue agregar esta línea a mi secuencia principal en el cuadro Rutas:

excluir actual / Library / …