다른 사용자와 협조하기 위해 Git을 사용하고 있지만, 오늘 "git pull
"을 사용하여 일부 파일의 최신 변경 사항을 가져올 수 없으며 "git log
"의 변경 사항을 볼 수 없습니다.'git pull'을 사용하여 파일을 업데이트하지 않습니다.
무엇이 문제 일 수 있습니까?
다른 사용자와 협조하기 위해 Git을 사용하고 있지만, 오늘 "git pull
"을 사용하여 일부 파일의 최신 변경 사항을 가져올 수 없으며 "git log
"의 변경 사항을 볼 수 없습니다.'git pull'을 사용하여 파일을 업데이트하지 않습니다.
무엇이 문제 일 수 있습니까?
현재 지사를 확인하십시오. 당신이 지점에없는 경우
git status
git branch
, 당신은 아무것도를 병합 할 것 detached HEAD mode 및 git pull
에 있습니다.
git log --all --branches
git log
를 가져올 나뭇 가지에 새로운 커밋 (즉, remote tracking branches입니다)이있는 경우 당신이 볼 수 있는지 확인합니다 도움이됩니다.
그 커밋을 그래프로 표시하려면 git log alias을 사용합니다.
좋은 생각. 가장자리 케이스를 덮으십시오. – Laereom
미완성 병합으로 풀을 방지 할 수 있습니다. 진행중인 커밋이 있는지 확인하십시오.
커밋이 진행 중인지 어떻게 확인합니까? –
나는 이런 일이 일어날 수있는 또 다른 사례를 추가하려고했습니다. 스파 스 체크 아웃을 사용하고있었습니다. 어떤 이유에서 나는 작업 트리에서 디렉토리가 희박한 체크 아웃에 포함되어 있다고 생각했지만 (나는 그것이 .git/info/sparse-checkout
에 열거되었다고 생각했지만) (나는 그것을 잊어 버린 어떤 이유로 .git/info/sparse-checkout
에서 제거했다.) 그래서 pull
또는 checkout
또는 reset
또는 다른 명령으로 무시되는 것입니다. 새롭고 신선한 복제본에서 스파 스 체크 아웃 구성을 복제하기 시작하고 오류를 깨닫기 전까지는 매우 혼란 스러웠습니다.
스파 스 체크 아웃을 사용하는 경우에만 발생합니다. 스파 스 체크 아웃을 사용하지 않는 경우에는 발생하지 않습니다. (git config를 검사하여 sparseCheckout이 활성화되어 있는지 확인하고 .git/info/sparse-checkout의 존재를 확인하십시오.하지만 사용자가 수동으로 설정해야한다고 생각하기 때문에이 작업을 수행했는지 알 수 있습니다.) (Google이 무엇인지 궁금하다면 다른 방법으로는 추적/가져 오거나 가져 오는 체크 아웃에서 파일과 디렉토리를 생략하는 간단한 메커니즘)
제 경우에는 문제가 저였습니다 내 .git
폴더에 index.lock
파일이 있습니다. 나는 그것을 제거하고 잡아 당겼다.
웬일인지 힘내이 언급하지 않는다! – CBHacking
그들이 제대로 작업을 푸시 했습니까? – Jepessen
업데이트를 얻는 데 아무 것도없는 것 같습니다. 파일이 다른 사용자와 동일한 저장소에서 올바르게 커밋 되었습니까? 이 로그에는 의심의 여지가 없습니다. – Aditya
당신은 당신이 당기려고하는 지점으로 하위 계급을 밀어 넣었습니까? –