Kan lokale referentie op Git Pull niet updaten: 4 manieren om dit te repareren
Veel gebruikers meldden dat ze de fout kregen dat ze de lokale ref niet konden bijwerken bij het uitvoeren van de Git Pull- of Git Push-opdracht. Dit gebeurt meestal vanwege een mismatch in de commit-ID’s of vanwege toestemmingsproblemen wanneer de lokale repository als een andere gebruiker wordt aangemaakt.
Hoe los ik de fout op die de lokale referentie niet kan updaten?
Voordat we beginnen met de enigszins complexe oplossingen, voert u deze snelle controles uit:
- Start de computer opnieuw op om kleine beschadigingen te herstellen en te controleren op verbeteringen.
- Zorg ervoor dat u de eigenaar bent of toestemming heeft om toegang te krijgen tot de projectbestanden.
- Zorg ervoor dat je git is bijgewerkt.
- Inspecteer de takken en zoek naar eventuele verschillen tussen hoofdletters en kleine letters. Controleer ook of er andere vestigingen bestaan met hetzelfde. Zo ja, hernoem dan de niet-kritieke namen.
1. Optimaliseer de lokale map
Een snelle oplossing is om de volgende twee opdrachten uit te voeren:$ git gc --prune=now
$ git remote prune origin
De eerste opdracht ruimt de onnodige bestanden op. Het wordt aanbevolen om het in elke repository uit te voeren voor optimaal schijfgebruik en betere prestaties. Het tweede commando, op afstand snoeien, verwijdert de oude, ongebruikte takken voor het op afstand volgen.
Houd er rekening mee dat u de tweede opdracht mogelijk meerdere keren moet uitvoeren om de fout bij het bijwerken van de lokale ref op te lossen.
2. Werk de referentie bij
Als het een verwijzingsprobleem is, gebruik dan deze opdracht:$ git update-ref -d refs/remotes/origin/[branch name]
Hier verwijst [branch name] naar de branch die de fout genereert vanwege een niet-overeenkomende Commit ID. Als je klaar bent, kun je doorgaan met het Git Pull- of Git Push-commando.
3. Controleer op een slechte referentie
Als de slechte referentie de master was, gebruik dan dit commando om git de ref-bestanden te laten herstellen:rm. git/refs/remotes/origin/master
4. Verwijder de corrupte of kapotte referenties na een BSOD
Een BSOD kan opgeslagen referenties beschadigen, vooral degene die open waren of waarnaar wordt geschreven, en deze vervolgens overschrijven met nultekens. Om dit op te lossen, verwijdert u deze verwijzing:refs/remotes/origin/some/branch
Het wordt opgeslagen in het volgende bestand:%repo_root%/.git/refs/remotes/origin/some/branch
Eén van deze oplossingen zou moeten helpen bij het oplossen van de fout die de lokale ref Git niet kan bijwerken. Onthoud dat er verschillende onderliggende oorzaken zijn, maar in de meeste gevallen zou het git prune commando de oplossing moeten zijn! Het werkt voor 7 van de 10 gebruikers.
Een vergelijkbare reeks oplossingen werkt met de fout Niet mogelijk om snel vooruit te spoelen en af te breken.
Voor vragen of om te delen wat voor u heeft gewerkt, kunt u hieronder een reactie achterlaten.
Geef een reactie