2012-10-06 4 views
3

로컬 디스크 복사를 정리하고 있습니다. 서버에 WordPress 설치가 있지만 repo에 WP 코어 파일이 필요하지 않습니다. 로컬 .gitignore에 wp-*.php을 추가하고 git rm --cached wp-*.php을 사용하여 일부 파일을 제거했습니다. 나는 변화를 저지르고 중앙 repo에 밀었다.Git에서 추적하는 파일 제거

프로덕션 서버에서 변경된 내용을 git pull remote master으로 가져오고 서버에서 wp-*.php 파일을 삭제했습니다.

git pull 프로덕션 서버에서 파일을 삭제하지 않고이를 수행하는 올바른 방법은 무엇입니까?

답변

4

(추적에서 파일을 삭제하도록 Git에 명령했기 때문에) 파일을 한 번만 제거합니다. 그런 다음 수동으로 다시 서버 측에 추가 할 수 있습니다. 그러면 Git은 첫 번째 제거 후 더 이상 추적하지 않으므로 다시 제거하지 않습니다.

+0

작업 사본에서 일부 파일을 삭제하고 인덱스에서 제거하여 다른 사람이 git pull을 수행하더라도 해당 파일을 삭제하지 않고 제거 할 수있는 워크 플로 또는 워크 플로가 있습니까? – Poe

+2

아니요. 인덱스에서 제거하고 커밋을 제거하면 Git은이를 삭제 된 것으로 처리하고 해당 삭제가 제거되면이를 제거합니다. 일들을 추적하지 않고 제거하고 싶다면 변경 사항을 끌어 당겨 변경 사항을 끌어와 다시 복원해야한다는 사실을 알려야합니다. – Amber

+0

@Amber는 다른 브랜치 인'develop'에서 그것을 제거하고,''--ours ''를 사용하여''development ''를''master ''에 병합하여 삭제를 전파하지 않고 병합을 기록 할 수 있습니까? – VonC

2

@Amber는 repo에서 삭제가 삭제 된 것입니다. 그리고 모든 복제본은 'git rm'커밋을 당길 때 모든 파일을 충실하게 삭제할 것입니다. 그들은 당기고있는 거래를 재실행하고 있습니다.

파일을 보관하는 데 신경 쓸 필요가없는 경우 파일을 삭제하는 대신 변경 사항 추적을 중지하는 것이 좋습니다. 이는 git update-index --assume-unchanged을 사용하여 수행 할 수 있습니다.

관련 문제