Git 저장소에 파일을 보관하되 변경 사항을 추적하지 마십시오
CodeIgniter 사이트에는 리포지토리에 있고 싶지만 변경 사항을 추적하지 않을 파일이 여러 개 있습니다.
예를 들어,이 프레임 워크의 새 설치를 새 클라이언트에 배포하고 다음 파일을 다운로드하고 (기본값은 CHANGEME 임)이 클라이언트에 맞게 변경해야합니다 (데이터베이스 자격 증명, 전자 메일 주소 정보, 맞춤 CSS).
// the production config files i want the files but they need to be updated to specific client needs
application/config/production/config.php
application/config/production/database.php
application/config/production/tank_auth.php
// index page, defines the environment (production|development)
/index.php
// all of the css/js cache (keep the folder but not the contents)
/assets/cache/*
// production user based styling (color, fonts etc) needs to be updated specific to client needs
/assets/frontend/css/user/frontend-user.css
현재 내가 달리면
git clone git@github.com:user123/myRepo.git httpdocs
위의 파일을 편집하면 좋습니다. 핫픽스 나 패치를 해제하고 실행할 때까지 git pull
. 그런 다음 모든 변경 사항을 덮어 씁니다.
git은 다른 해결책을 가지고 있습니다. 먼저 추적하지 않으려는 파일을 변경하고 다음 명령을 사용하십시오.
git update-index --assume-unchanged FILE_NAME
변경 사항을 다시 추적하려면 다음 명령을 사용하십시오.
git update-index --no-assume-unchanged FILE_NAME
내 코드 점화기 프로젝트의 경우 데이터베이스에 database.php.example 및 config.php.example 을 유지 합니다 .
그런 다음 config.php 및 applications / config / database.php 를 .gitignore 파일에 추가합니다.
마지막으로 배포 할 때 .example 파일 (config.php 및 database.php로)을 복사하여 사용자 지정할 수 있으며 GIT에서 추적하지 않습니다.
다른 답변의 주석에서 답변을 가져 오려면 :
$ git update-index --skip-worktree FILENAME
더 나은 옵션 인 것 같습니다 --assume-unchanged
이것에 대해 더 읽을 수 있습니다 : Git- '가정하지 않은 가정'과 '건너 뛰기'의 차이점
.gitignore
파일에 넣고 필요에 따라 수동으로 복사합니다.
따라서 스켈레톤 파일 이름은 git에 있고 무시 파일 이름은 git에 있지 않지만 .gitignore에 있습니다. 이렇게하면 '템플릿'에서 '실제'로 복사하는 수동 단계 (아마도 스켈레톤보다 나은 이름)가 수행되면 즉시 무시됩니다.
주어진 답변은 문제를 부분적으로 해결하지만 더 많은 문제가 발생합니다.
"Web.Local.config"파일을 보존해야했습니다. 나를 위해 일한 유일한 해결책은 다음과 같습니다.
1. 프로젝트에서 파일을 제외
2. 파일의 별도 사본을 Web.LocalTemplate.config로 작성하십시오.
"Web.LocalTemplate.config"가 Git에 의해 추적되었으므로 모든 개발자가이를 시작점으로 사용할 수 있습니다. 그러나 프로젝트의 일부가 아닌 "Web.Local.config"는 자동으로 무시됩니다.
참고 URL : https://stackoverflow.com/questions/9794931/keep-file-in-a-git-repo-but-dont-track-changes
'Programing' 카테고리의 다른 글
조건과 일치하는 배열 내 객체의 인덱스를 가져옵니다. (0) | 2020.03.30 |
---|---|
Bash에서 여러 텍스트 파일을 단일 파일로 연결 (0) | 2020.03.30 |
Oracle의 테이블에서 중복 값을 어떻게 찾습니까? (0) | 2020.03.30 |
도커 오류 : 장치에 남은 공간이 없습니다. (0) | 2020.03.30 |
하위 쿼리를 사용하여 postgres에서 테이블 행 업데이트 (0) | 2020.03.30 |