2012-03-02 17 views
7

A volte ci piacerebbe integrare una modifica da un ramo a un altro, ma le modifiche di origine devono essere ignorate in modo efficace. Generalmente lo facciamo con resolve -at, che significa "ignora semplicemente le modifiche alla sorgente" e lascia invariato il target. Questa operazione ha comunque effetto sui metadati di Perforce, dal momento che ora capisce che le revisioni di origine in questione sono state integrate alla destinazione, quindi non verranno incluse nelle future integrazioni.Integrazioni Perforce con destinazioni eliminate

Se un file di destinazione viene cancellato, tuttavia, la volontà non riuscirà con il seguente errore:

<dest> - can't branch from <source> without -d or -Dt flag

OK, in modo da utilizzare il flag -Dt, e il file viene nuovamente aggiunto. Tuttavia, non è idoneo per la risoluzione, quindi non posso usare -at e qualsiasi invio ricreerà il file, che non è quello che voglio (che è quello di lasciare la destinazione invariata).

C'è un modo per fare ciò che voglio? Non voglio nemmeno modificare branchspec per ogni cancellazione nella destinazione, e infatti tali modifiche potrebbero non essere appropriate per le filiali per le quali non voglio questo comportamento "no op".

risposta

13

La versione più recente del server Perforce (2011.1) ha una soluzione per questo. Da the release note:

When files have been edited in one branch and deleted in another, a special resolve will be scheduled to accept or ignore the branch or delete action. (This replaces the old "can't branch/delete without -d flag" warning.) The -Rb and -Rd flags to "p4 integrate" will force all branch and delete actions to be resolved, permitting them to be ignored even when they are not in conflict.

+0

Perfetto, esattamente ciò di cui avevo bisogno. Sembra che siamo ancora bloccati su qualche versione preistorica del 2010, ma spingerò per un aggiornamento! – BeeOnRope

+0

Alla fine abbiamo ottenuto questa versione e le flag '-R *' hanno funzionato come previsto. – BeeOnRope

Problemi correlati