Fa delta pista per forza unici per un changeset o lo fa solo memorizzare l'intero file?

StackOverflow https://stackoverflow.com/questions/4272022

  •  28-09-2019
  •  | 
  •  

Domanda

Ho cercato di unire un lavoro che uno sviluppatore ha fatto in un ramo di lavoro ad un ramo stabile. I file a, b, e c era stato modificato di almeno una decina di modifiche poiché l'antenato comune di stabili e HEAD rami sono stati separati.

mi aspettavo che da quando questo sviluppatore ha cambiato cinque linee in ciascuna delle file di a, b, c, che quando ho integrato dalla testa al ramo stabile, vorrei avere i suoi cambiamenti nel mio changset attesa, che ho potuto poi recensione e si impegnano.

Al contrario, sembra che abbia preso ogni cambiamento che è successo a depositare A, dal momento che i due sono stati ramificata, e applicato tutte quelle modifiche che esistevano anche in copia di lavoro del mio collega.

In altre parole, non sembra esserci nessun record in un changeset per forza, di ciò che il mio collega effettivamente cambiato, rispetto a ciò che il file prima conteneva.

Se passo in rassegna i gruppi di modifiche presentate, posso vedere la differenza tra la versione del mio collega del file, e la versione immediatamente precedente. Ma allora, che non lo fa, a quanto pare, determinare ciò che accade nella fusione.

non un mezzo di modifiche "una serie di modifiche apportate tra il rev X e la revisione X + 1 di un file"? Qualcuno può aiutarmi a capire che cosa vuol dire "integrare un insieme di modifiche", quando in realtà, ciò che sembra è che Perforce non tiene modifiche, tiene traccia dei file.

E 'del tutto possibile che io sto facendo tutto sbagliato, e gradirebbe qualsiasi puntatore su come è che si può possibile unire in modo accurato e sicuro tra i rami di lavoro Perforce e rami stabili, senza di roba che non si desidera ottenere integrato al ramo stabile sempre integrati. Sembra che non importa quanto semplice i cambiamenti che hanno reso effettivamente ottenere nel prodotto, l'unione in realtà non lavoro per me.

È stato utile?

Soluzione

Perforce non Salva modifiche per testo file come delta (file binari vengono salvati nella loro interezza ogni volta che viene presentato un cambiamento). Sembra che tu non sei limitando correttamente la gamma di revisione durante il vostro integrazione.

È dire che il ramo di lavoro ha "... stato modificato di almeno una dozzina di gruppi di modifiche dal momento che i rami sono stati separati ...." la chiamata di Let Them changelists 1-12. Se ho capito bene si sta cercando di integrare le modifiche apportate in una di quelle changelists, non tutti di loro.

Nel corso di una semplice operazione di integrazione Perforce assumerà si desidera integrare tutte le modifiche che sono state presentate dal momento che il ramo è stato fatto. Se si desidera solo un sottoinsieme di questi cambiamenti, è necessario specificare un intervallo di revisione. Quindi, se si desidera solo per integrare i cambiamenti che si sono verificati tra il 11 e il 12 elenco modifiche, è necessario specificare tale intervallo di revisione, come mostrato nella cattura dello schermo. (Nota: l'intervallo di revisione è compreso, quindi specificare un intervallo di 11-12, come faccio in questo screenshot sarà effettivamente includere modifiche dei changelists 11 e 12. Se si desidera solo per integrare i cambiamenti realizzato in elenco modifiche 12, immettere 12 in entrambi i campi della gamma di revisione.)

Basta essere consapevoli che gli inevitabili conflitti che sorgono possono essere difficili da risolvere, a seconda di quanto i rami sono divergenti e la natura dei cambiamenti.

alt text

Altri suggerimenti

Potrebbe essere più preciso su come hai fatto l'integrazione? La mia ipotesi è che probabilmente hanno integrato tutte le modifiche fino a quel elenco modifiche invece giusto che changelist. Se è così tutto quello che dovete fare è specificare lo stesso elenco modifiche come sia il limite superiore e inferiore di integrazione.

E 'molto facile da fare nel client visivo, ma non sono sicuro dell'esatta riga di comando è necessario utilizzare.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top