Quindi immagino di avere un repository locale che ho clonato da qualche origine. Al momento del mio clone iniziale, l'origine aveva quattro rami: funzioneA, funzioneB, funzionalitàC e master. Se spingo modifiche all'origine che cancellano il featureA ramo mi aspetto di vedere qualcosa su di esso venga eliminato la prossima volta che numero:Come consentire a Git di avvisarmi sui rami remoti eventualmente eliminati
$ git pull origin
Tuttavia, quello che succede è che io non vedo niente e quando cerco di tirare quel ramo specifico verso il basso con
$ git pull origin featureA
ottengo il seguente errore:
fatal: Couldn't find remote ref featureA
fatal: The remote end hung up unexpectedly
Questo rende totalmente senso, come th Il ramo è stato infatti cancellato dal telecomando, quindi sì, l'arbitro non è più lì, tuttavia mi chiedo perché non sono stato informato di questo fatto. Il mio .git/config per il telecomando è simile al seguente:
[remote "origin"]
fetch = +refs/heads/:refs/remotes/origin/
url = [email protected]:/data/git/perecep.git
ho scritto un piccolo script che utilizza il git ls-remote insieme con l'uscita dal git branch -r a rileva i riferimenti remoti i cui rami non esistono più sul server e mi chiedono se vorrei cancellarli, ma mi chiedo se sto solo facendo qualcosa di intrinsecamente sbagliato qui?
sto seguendo un flusso di lavoro più "server centrale" con Git b/c io sono in un ambiente aziendale e questo è come gli sviluppatori per i laptop preferirei condividere il codice (creando branch di argomento pubblico su un server centrale per spingerne le modifiche per la collaborazione) per ora. Dal momento che siamo appena passati da SVN, questo è qualcosa con cui sono più a loro agio. Immagino che la mia preoccupazione sia che dopo aver creato diversi rami effimeri di questa natura che vengono eliminati dopo l'integrazione della funzione/argomento, tutti gli sviluppatori ora hanno tonnellate di ref di filiali remote stantie nel loro repository locale. – NewGitUser