웹 응용 프로그램을 배포하려면 http://danbarber.me/using-git-for-deployment/과 같은 git 기반 배포 절차를 구현하려고합니다. 당신은, 당신은에서 끌어있는 "허브" git deployment : 병합되지 않은 작업 트리 파일이 덮어 씁니다.
- 베어의 repo : 는 기본적으로 라이브 서버에 두의 repos 구성 "바퀴통". 허브에 적절한 업데이트 후크가있는 경우이 작업이 자동으로 수행됩니다.
문제는 내 프로젝트에서 웹 서버의 개발 및 실제 라이브 데이터에 샘플 데이터가 들어있는/upload/같은 많은 디렉토리가 있다는 것입니다.
이상적으로 로컬 저장소에 업로드/폴더를 보관하고 싶지만 라이브 저장소에서 가져 오지 않는 것이 좋습니다. 이제 "부분적인"당김이 가능하지 않습니까?
따라서, 최적의 솔루션 (I 지역의 repos 샘플 데이터를 복제 할 수 없습니다), 내가 그 폴더를 무시하려고하지만 아니에요 경우에도 :
- 나는에 업로드/폴더를 추가했다. 로컬 및 라이브 repos에 gitignore. 비 추적 작업을 :
- 나는
- 내가 오류가 나는 허브에서 끌어 라이브의 repo에 베어 "허브"의 repo
- 에 프로젝트를 밀어/
- 업로드 --cached 자식 RM으로 제거 트리 파일을 병합 덮어 것 ...이 글을 쓰는 동안 /이 실제로
업로드/폴더 어딘가에 여전히 나에게 보인다 ... 가, 내가 볼 XXX 업로드하는 허브에서 복제의 폴더 업로드/너무 복제되었습니다!
몇 가지 질문에서 본 것처럼 모든 프로젝트 기록에서 폴더를 완전히 제거하는 유일한 해결책은 무엇입니까?
다른 모든 동료가 다른 지사에서 일하는 것을 지저분한 리베이스로 강제 할 예정입니까?
이 모든 것을 설명하고 이해하는 것은 어렵지만 어떤 생각이든 환영합니다.
'git rm --cached'는 index에서 파일을 제거하기 만합니다. 이것은 다음에 커밋 될 내용을 의미합니다. 실제로 파일을 제거하지 않으며 다음 커밋에서 제거를 표시하지도 않습니다. 'git add upload/*'(커미트되지 않은)를했다면 무언가를 할 것입니다. 그렇지 않으면 아무것도하지 않습니다. – Shahbaz