나는 과거에 잘못된 파일을 git에게 맡겼다. 그 후 다음 파일을 제외하고 무시했습니다.
git rm --cached -r config.php
git reset config.php
echo "config.php" >> .gitignore
git update-index --assume-unchanged config.php
이제 git commit이 훌륭하게 작동합니다. config.php의 변경 사항은 커밋되지 않습니다.
그러나 : 예를 들어 브랜치를 전환하기 위해 작업 디렉토리를 숨기면 config.php가 로컬 저장소에서 복원됩니다.
git stash
무시 된 (및 인덱스 제외 된) 파일을 변경하지 않고 어떻게 사용할 수 있습니까?
https://help.github.com/articles/remove-sensitive-data 에서 해결책을 찾았습니다 .
git filter-branch --force --index-filter \
'git rm --cached --ignore-unmatch config.php' \
--prune-empty --tag-name-filter cat -- --all
reset
향후 커밋에서 제외하려면 a 가 필요할 수 있습니다 .
git reset config.php
config.php의 모든 정보가 로컬 브랜치에서 제거 된 후 원격 저장소를 업데이트하도록 강제 푸시했습니다.
git push origin master --force
이제 내 숨김 영역이 제대로 작동합니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다