Er lijkt nog een git-proces te draaien in deze repository

Ik probeer Git te leren gebruiken en heb een klein project gemaakt met een HTML-, CSS- en Javascript-bestand. Ik heb een branch gemaakt van mijn in principe lege project en heb vervolgens enkele wijzigingen in mijn code aangebracht. Ik heb geprobeerd de wijzigingen te stagneren, maar ik krijg de volgende foutmelding:

Another git process seems to be running in this repository, e.g.
an editor opened by 'git commit'. Please make sure all processes
are terminated then try again. If it still fails, a git process
may have crashed in this repository earlier:
remove the file manually to continue.

Toegegeven, ik kwam problemen tegen toen ik mijn lege project eerder probeerde te committen en stopte gewoon met git bash omdat ik niet wist hoe ik uit de situatie moest komen waar ik op de een of andere manier was gekomen.

Is er een manier om dit op te lossen of moet ik gewoon een nieuwe repository starten?


Antwoord 1, autoriteit 100%

Probeer het bestand index.lockte verwijderen in je .gitdirectory.

rm -f .git/index.lock

Dergelijke problemen treden over het algemeen op als je twee Gitcommando’s tegelijk uitvoert; misschien een van de opdrachtprompt en een van een IDE.


Antwoord 2, autoriteit 6%

Gebruik de onderstaande opdracht in de hoofdmap van de toepassing. Dit zal het index.lock-bestand verwijderen en de actieve vergrendeling vrijgeven.

rm .git/index.lock

Antwoord 3, autoriteit 3%

Het verwijderen van mijn vastleggingsbericht werkte voor mij.

rm .git/COMMIT_EDITMSG

Toen zei het.

fatal: kan ref ‘HEAD’ niet vergrendelen: kan ‘.git/refs/heads/[your-branch-name].lock’ niet maken: bestand bestaat.

Houd er rekening mee dat uw filiaalnaam anders kan zijn dan de mijne. U kunt dit vergrendelingsbestand verwijderen door te doen;

rm .git/refs/heads/[your-branch-name].lock

Ik hoop dat dit iemand helpt.


Antwoord 4

Ok, ik heb het uiteindelijk werkend gekregen door ‘$ git rm .git/index.lock’ uit te voeren… Het is raar omdat ik dat een paar keer eerder heb gedaan zonder resultaat, maar hey computers toch?


Antwoord 5

Dit overkwam mij en hoewel sourcetree me bleef vertellen dat het vergrendelingsbestand bestaat, was er geen dergelijk bestand dat ik kon verwijderen. Dus ik heb net een andere branch uitgecheckt en keerde toen terug naar de originele branch en merkte dat deze wijziging het probleem oploste.


Antwoord 6

Het is vergelijkbaar met bovenstaande methoden, maar in mijn geval had ik er meerdere

.git/refs/heads/<branch_name>.lock

en kon op deze manier alles in één keer verwijderen

find -name "*.lock" -exec xargs rm {} \;

Antwoord 7

Als u een windows-gebruiker bent, zal er een fout zijn 'rm' is not recognized as an internal or external command. Dat komt omdat rm een Linux-commando is. Dus in Windows kun je hieronder gebruiken om het bestand index.lockin de map .git

te verwijderen

del -f .git/index.lock

Antwoord 8

Als je CocoaPods gebruikt en op een gegeven moment een update of installatie hebt verprutst (handmatig gestopt of zoiets), probeer dan

1) Het bestand index.lockverwijderen (in .git/index.lock)

2) Verwijder je Podfile.lock-bestand.

3) Doe een nieuwe pod update

4) Probeer het git-commando uit te geven dat niet werkte (in mijn geval was het een git add .)


Antwoord 9

Voor mij was het probleem eenvoudiger, dit zat in de source tree, dus ik weet niet zeker in hoeverre het van toepassing is op reguliere oplossingen, maar ik had per ongeluk mijn master branch geselecteerd om een commit te maken in plaats van mijn niet-gecommitteerde wijzigingen.

Normaal gesproken zou dit geen probleem zijn, maar ik had al preventief een commit-bericht ingevoerd, zodat ik kon volgen wat ik aan het doen was voor die kleine sprint waar ik mee bezig was.

Kortom, ik begon een commit op de niet-gecommitteerde branch en probeerde per ongeluk een andere commit te starten op mijn master-branch.


Antwoord 10

gebruik het volgende commando in het geval dat je geconfronteerd wordt met Een ander git-proces lijkt te draaien in deze repository, b.v.
een editor geopend door ‘git commit’. Zorg ervoor dat alle processen
worden beëindigd, probeer het dan opnieuw. Als het nog steeds niet lukt, een git-proces
is mogelijk eerder in deze repository gecrasht:
verwijder het bestand handmatig om door te gaan.

rm -f .git/index.lock

git reset
en gebruik na het reset-commando git status, git add, en git commit -a of git commit -m “your message”, git push origin master.


Antwoord 11

Het kan gebeuren dat uw branchbeschadigd is maak een nieuwe branch
git branch #check branch. Ik heb een nieuwe branch gemaakt en werk .

branch -b "main"
git checkout -b "main"  #main is new branch
git add .
git commit -m "all files"
git remote add origin #**YOUR REPO**  https://github.com/tarun-techmarbles/wp-dump-sql-git-push.git
git push origin main  #push with new branch 

Antwoord 12

Hoewel er hierboven een alternatief is, loste dat de mijne niet op.
In mijn geval verwijder ik de “git”-plug-in in ./zshrc en start de computer opnieuw op, dan is het probleem verdwenen, ik denk dat de zsh-plug-in iets had gedaan dat in strijd was met het oorspronkelijke git-commando.


Antwoord 13

Ik kreeg deze fout tijdens pod update. Ik heb het opgelost door het bestand index.lockin de .gitdirectory van .gitte verwijderen.

rm -f /Users/my_user_name/.cocoapods/repos/master/.git/index.lock

Het kan iemand helpen.


Antwoord 14

Verwijder index.lockhier:

<path to your repo>/.git/index.lock

Als uw repository submodules heeft, verwijder dan ook alle index.lockhierin:

<path to your repo>/.git/modules/<path to your submodule>/index.lock

Antwoord 15

Ik heb dezelfde problemen gehad toen ik probeerde een bestand in SourceTree te stagen.

Om dit op te lossen ga je naar de .git-map in de projectdirectory en verwijder je index.lock handmatig en je bent klaar.


Antwoord 16

Voor mij was de oplossing zo simpel als het sluiten van mijn IDE en vervolgens uitchecken. Een teamgenoot van mij had mijn PR geaccepteerd en de code via TFS samengevoegd. Het verwijderen van de .lock-bestanden werkte niet.


Antwoord 17

Had hetzelfde probleem bij het gebruik van SourceTree. Maar er was helemaal geen index.lockbestand op mijn host. Ik heb het bestand packed-refs.lockgevonden en nadat ik het had verwijderd, was het probleem opgelost.


Antwoord 18

rm -f .git/index.lockhielp niet, omdat ik een vergrendeldbestand had dat niet verwijderd kon worden. Dus index.lockwas ook vastgelegddoor een applicatie.

In Windows heb ik een alternatief voor Unlockergedownload met de naam Lock Hunteren beide bestanden verwijderd. Githeeft ze gevangen.


Antwoord 19

Als u PowerShell gebruikt, gebruik dan

rm -Force .git/index.lock


Antwoord 20

Ik had hetzelfde probleem. Ik hoefde weinig meer te doen om dit op te lossen. Eerst heb ik index.lockverwijderd en daarna heb ik nieuwe code gekloond van de bestaande git-repository-locatie. Ik had mijn codewijzigingen op een aparte locatie. Ik kopieerde de map .giten het bestand .gitignoreen plakte in de codemap waar ik codewijzigingen had aangebracht.
Toen probeerde ik me te binden en te pushen, het werkte soepel.
Misschien is deze informatie nuttig als uw probleem niet wordt opgelost met de hierboven gegeven oplossingen.


Antwoord 21

ik had hetzelfde probleem, het probleem was dat ik probeerde mijn code te pushen met een xml-bestand (gebruikt als een dataset) met een grootte van 1,3 GB, dus ik voeg deze bestanden toe aan .gitignoreen dan probleem opgelost


Antwoord 22

Als je hier terechtkomt op basis van de titel van de vraag (“Er lijkt een ander git-proces in deze repository te draaien”), houd er dan rekening mee dat het geaccepteerde antwoord niet direct op jou van toepassing is als het bericht in de titel van deze vraag wordt voorafgegaan door nog een bericht zoals hieronder:

fatal: cannot lock ref 'HEAD': Unable to create '/<PATH>/<TO>/<REPO>/.git/refs/heads/<BRANCH>.lock': File exists.

In dit geval moet je dat bestand (.lock) verwijderen in plaats van .git/index.lock


Antwoord 23

  • Mijn Mac is traag, dus ik heb 2 git commit‘s uitgevoerd: één uitgevoerd en de tweede werd geblokkeerd door de eerste.
  • Ik heb rm -f .git/index.lockgeprobeerd
    • rm .git/refs/heads/[your-branch-name].lock
  • <path to your repo>/.git/index.lock
  • <path to your repo>/.git/modules/<path to your submodule>/index.lock

@Ankush:

  1. find | grep '\.lock$'
  2. rm -f ./.git/index.lockdit was handig om te controleren – er lag geen .lock-bestand op de loer

Ik deed wat @Chole deed – uitgecheckt uit mijn IDE, afgesloten en nog een keer naar een git-statusgekeken. Voer vervolgens een $git add . $git commit -m'msg' $git push

Het wist de 2 terminals die opdrachten uitvoerden en loste het probleem op. Ik hoop dat dit iemand helpt – de diagnose was goed, dus bedankt allemaal, erg behulpzaam.

Een langzame Mac heeft dit probleem eerder veroorzaakt – dus nu wacht ik gewoon even voordat ik een tweede commit uitvoert die in strijd is met de eerste.


Antwoord 24

We kunnen deze fout oplossen door een bestand met de naam index.lockin de .git/directory te verwijderen:

rm -f .git/index.lock

Hiermee wordt de cache van de Git-index gewist, zodat u een ander Git-commando kunt uitvoeren. We hoeven het git rm commando niet te gebruiken omdat index.lockgeen deel uitmaakt van onze bijgehouden repository. index.lockis een verborgen Git-configuratiebestand. Laten we proberen onze code opnieuw vast te leggen:

git add .
git commit

Other episodes