Ho il sospetto che io abbia un mergeinfo corrotto ma non ne sono sicuro. Qualcuno sa come farei una determinazione e quali risorse sono là fuori per aiutare a risolvere i problemi?Come determinare se svn: mergeinfo è corrotto e come posso risolvere il problema?
Ecco il problema. Il mio team si è recentemente spostato sull'agile e utilizza i rami delle funzionalità (rami della storia) in cui team diversi lavorano contemporaneamente sulle stesse fonti. Mentre la storia raggiunge un alto stato di preparazione, la squadra si fonde con il tronco. Le fusioni richiedono giorni o settimane a causa di modifiche mancanti, modifiche impreviste e conflitti. Stiamo parlando di team di 5-10 persone e lo sforzo/churn sembra molto alto.
La gente usa il modello di questa fusione a) PULL - merge tronco-to-ramo, risolvere, prova, commettere b) PUSH - merge branch-to-tronco, risolvere, prova, commettere c) Ricreare ramo (o di solito creare un nuovo ramo della storia e abbandonare la vecchia poiché è stata completata)
Alla fine di questo ramo e tronco dovrebbero essere in allineamento.
problemi che stiamo vedendo:
- modifiche non riportati durante tronco-to-unione tra rami presentarsi in successive
- conflitti branch-to-tronco su svn: proprietà mergeinfo durante l'unione
- file mancante, ma modifica locale sul nuovo file aggiunto nel ramo e inserito nel trunk
- in arrivo + eliminazione locale (il file cancellato su trunk e branch mostra come conflitto)
(1) Non dovrebbe accadere. Il tiro dal ramo al tronco dovrebbe mettere i due in sincrono per tutte le modifiche già sul tronco. Le modifiche nella fusione da ramo a tronco sono le modifiche avvenute sul trunk. Quindi nella prima unione si sarebbero dovuti propagare alle diramazioni, ma non l'hanno fatto. Ciò indica la corruzione nei dati di mergeinfo che "nascondono" le modifiche del trunk.
(2) Non dovrebbe accadere. SVN dovrebbe gestire le modifiche nel tracciamento unione. Ciò indica anche la corruzione nei dati di mergeinfo
(3) Non dovrebbe accadere. Questo è il caso di un nuovo file aggiunto sul ramo. Dovrebbe apparire come un nuovo file aggiunto al trunk. Ciò indica anche la corruzione nei dati di informazioni di fusione.
(4) Credo che questo sia un bug SVN e che non possiamo risolvere questo problema. Comunque se questo fosse il nostro unico problema sarei felice
Siamo attualmente sul server svn 1.5.x con i client che usano svn 1.6.xe svn + ssh per la connessione. Abbiamo in programma di passare all'ultima e più grande SVN poiché alcune correzioni potrebbero influire sui nostri problemi.
Tuttavia, sembra sicuro che i nostri dati di mergeinfo siano errati.
- Unisce che non evidenziare tutte le variazioni
- conflitti in fusione di proprietà mergeinfo
Eventuali buoni posti per me per iniziare la ricerca?
SVN 1.6.11 client potrebbe essere la mia risposta. Ho usato il sito di upgrade di Wandisco (che oscilla) e l'inferno di fusione è molto meno dannoso –
Stai usando il flag "--reintegrate" per l'unione "push"? Il fatto che tu abbia un passo "risolutivo" dopo mi suggerisce che non lo sei. Non riesco a trovare documenti specifici che dicano che le unioni a due vie senza "--reintegrate" non possono funzionare, ma l'esistenza stessa di "--reintegrate" suggerisce che la fusione di svn non è altrimenti all'altezza del compito. – slowdog