모든 커밋에서 VS 2017 Git Local Commit DB.lock 오류


200

모든 로컬 커밋 에서이 오류가 발생합니다.

치명적인 오류로 인해 Git이 실패했습니다. 오류 : open ( ". vs / XXXXXX.Dev.Library / v15 / Server / sqlite3 / db.lock") : 권한이 거부되었습니다. /Server/sqlite3/db.lock

Azure DevOps GIT에 동기화하기 전에 로컬 git 리포지토리를 사용하여 VS 2017을 새로 설치 한 것입니다.

잠금 파일을 수동으로 삭제 한 다음 동기화를 잘 수행 할 수 있지만 개발 프로세스가 크게 느려집니다 ( 닫기 , 삭제 , 열기 , 커밋 할 때마다).

누구 든지이 문제에 대한 더 나은 장기 픽스를 알고 있습니까?


다른 사람 이이 문제를 해결하고 ".vs /"를 .gitignore에 추가해도 작동하지 않는 경우 PowerShell에서 파일을 만든 다음 메모장 ++로 편집하면 파일이 잘못된 문자 인코딩 유형으로 남습니다. VS 코드로 열고 일반 UTF8로 인코딩 한 다음 제대로 작동했습니다.
Brian Leishman

답변:


418

.vs 폴더를 .gitignore 파일에 추가 하십시오.

https://github.com/github/gitignore/blob/master/VisualStudio.gitignore 는 GitHub의 .gitignore 템플릿 모음에 포함 된 Visual Studio 용 템플릿입니다.


.gitignore 파일을 추가하는 데 문제가 있으면 다음 단계를 따르십시오.

  1. 팀 탐색기 창에서 설정으로 이동하십시오.

팀 탐색기-설정

  1. 그런 다음 리포지토리 설정에 액세스하십시오.

리포지토리 설정

  1. 마지막으로, 파일 무시 섹션에서 추가를 클릭하십시오.

여기에 이미지 설명을 입력하십시오

끝난. ;)
이 기본 파일에는 이미 .vs 폴더가 포함되어 있습니다.

여기에 이미지 설명을 입력하십시오


3
예, 그것은 최고의 answare입니다. 저는 "2017"만 다음에 넣었습니다 : # Visual Studio 2015/2017 cache / options directory .vs /
harveyt

1
문제는, git clean -fxd그때 꼬임에 간질을 얻는다. 청소하기 전에 VS를 종료해야합니다. 이것은 VS2017 이후에 시작되어 2015 년에는 일어나지 않았습니다
Peter McEvoy

4
이것은 나에게도 효과가있었습니다. 오해의 소지가있는 오류 메시지에 대한 완벽한 답변.
Stanley Okpala Nwosa

@Matheus는이 커밋을 수행 한 후에도 작동했지만 Commit All 및 Push는 여전히 동일한 오류를 표시합니다. 커밋하고 푸시하기 위해 무엇을 할 수 있습니까?
Stanley Okpala Nwosa

VS에서 git을하는 것이 대부분 마술처럼 보이지만 나를 위해 일했습니다. 나는 토끼를 모자에서 꺼내려고하지만 대신 침팬지를 얻는다.
Roberto

63
  1. .vs 폴더를 커밋해서는 안됩니다.
  2. 프로젝트 git 루트 디렉토리에 ".gitignore"라는 이름의 파일을 만듭니다.
  3. ".gitignore"파일에 다음 ".vs /"행을 추가하십시오.
  4. 이제 프로젝트를 커밋하십시오.

여기에 이미지 설명을 입력하십시오


안녕하세요,이 파일 형식은 gitignore 파일에 있지만 여전히 오류가 발생합니다. pls 도와주세요.
user3820266

33

1 단계 :
.vs /를 .gitignore 파일에 추가하십시오 (다른 답변에서 언급했듯이).

2 단계 :
1 단계에서 .vs / 내의 파일이 이미 추가 된 경우 현재 분기 인덱스에서 파일을 제거하지 않음을 이해하는 것이 중요합니다. 다음을 발행하여 활성 분기를 지우십시오.

git rm --cached -r .vs/*

3 단계 :
프로젝트의 다른 모든 활성 분기에 대해 1 단계와 2 단계를 즉시 반복하는 것이 가장 좋습니다.
그렇지 않으면 정리되지 않은 분기로 전환 할 때 동일한 문제에 쉽게 직면하게됩니다.

전문가 팁 :
1 단계 대신 .vs 경로보다 훨씬 더 많은 VisualStudio 용 공식 .gitingore 템플릿을 사용할 수 있습니다.
https://github.com/github/gitignore/blob/master/VisualStudio.gitignore
(그러나 여전히 2 단계와 3 단계를 잊지 마십시오.)


.vs가 내 .gitignore (.vs /) 파일에서 제외되었으며 문제가 계속 발생합니다. 다른 문제는 무엇입니까?
Stanley Okpala Nwosa

1
git rm --cached -r .vs / *를 실행하여 해결할 수있었습니다. 감사합니다
Stanley Okpala Nwosa

5

모든 커밋에서 VS 2017 Git Local Commit DB.lock 오류

이 문제는 손상된 .ignore 파일로 인해 발생했을 것입니다.

IDE가 Visual Studio 인 경우 다음 단계에 따라이 문제를 해결하십시오.

  1. 프로젝트 폴더에서 .gitignore 파일을 삭제하십시오.
  2. 팀 탐색기로 이동
  3. 팀 탐색기에서 홈으로 이동
  4. 설정으로 바로 가기
  5. GIT에서 저장소 설정을 클릭하십시오.
  6. -무시 및 속성 파일에서-파일 무시에서-추가를 클릭하십시오. 파일 무시가 성공적으로 생성되었다는 알림이 표시됩니다
  7. 솔루션을 구축하십시오. 빌드가 성공하면 시간이 조금 걸리고 새 .ignore 파일이 생성됩니다.
  8. 더 이상 문제없이 커밋하고 푸시 할 수 있습니다.

주의 : Visual Studio 버전에 따라 이러한 옵션이 다르게 적용될 수 있습니다. Visual Studio 2019 Community Edition을 사용하고 있습니다.


나를 위해 일했다. 감사!
체이스 에른스트

2

같은 문제가 있었지만 .gitignore 파일을 만들어 해결했습니다.

또한 .vs 폴더에서 db.lock 파일을 제거하는 것으로 구성된 해결 방법을 찾았지만 매번 수행해야하며 오랫동안 이렇게하면 성가신 작업이됩니다.

이 문제를 해결하는 가장 좋은 방법은 이전에 제안한대로 .gitignore 파일을 작성하는 것이지만 일반적인 지식 목적으로 만이 해결 방법을 언급하는 것이 좋습니다!

감사합니다. Tony Grinton


0

Visual Studio를 통해 Git을 직접 사용하지 않고 Git Desktop 클라이언트를 사용하고 있습니다.

그러나 비슷한 오류가 발생했지만 master에 변경 사항을 커밋하기 전에 Visual Studio를 닫아서 해결했습니다.


0

Visual Studio와 같은 IDE를 사용하고 있으며 명령을 보내는 동안 IDE를 닫고 다시 시도하는 경우 열려 있습니다

git add .

그리고 다른 명령, 그것은 운동합니다


0

나를 위해 아래 단계가 도움이되었습니다.

  • Visual Studio 2019 닫기
  • 프로젝트에서 .vs 폴더 삭제
  • 프로젝트를 다시 열면 .vs 폴더가 자동으로 생성됩니다
  • 끝난

0

자동 생성 된 .gitignore파일 /.vs대신에 포함되어 .vs/있습니다. 이 오타를 수정하면 문제가 해결되었습니다!


0

여기에 이미지 설명을 입력하십시오

나를 위해 실수로 삭제 한이 두 파일은이 두 파일을 실행 취소하고 변경 사항에 추가 된 후 변경 사항을 git에 커밋 할 수있었습니다.


0

이것과 내 .gitignore가 내 프로젝트 폴더 안에 있었지만 주 git 폴더는 솔루션 수준이었습니다. gitgitore를 솔루션 / git 레벨 폴더로 옮기는 것이 효과가있었습니다. 아직 어떻게 도착했는지 잘 모르겠지만 ...


-1

파일을 디렉토리에 수동으로 복사하십시오 (C : \ Users \ Admin \ AppData \ Local \ Temp \ WebSitePublish \ digisol--1147805695 \ obj \ Debug \ Package \ PackageTmp.vs \ digisol \ v15 \ Server \ sqlite3)


-1

위의 솔루션을 수행했으며 마침내이 문제가 해결되었습니다.

  • 비주얼 스튜디오를 닫습니다

  • 프로젝트 폴더에서 git bash를 실행하십시오.

  • 쓰기 :

    git add.

    git commit -m "[댓글]"

    자식 푸시


-2

이 문제를 해결하는 것은 간단합니다. 먼저 Visual Studio를 닫고 Windows 탐색기를 열고 위치 폴더 .vs로 이동하여 폴더 속성을 열고 숨겨진 옵션을 확인하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.