서버의 루트를 클라이언트 시스템에 문서화 할 수 있습니까?


1

여기에 내 문제가있다.

우리 회사에는 이와 같은 설정이 있습니다. 아파치, PHP 및 모든 서버가 있습니다. 모든 클라이언트 (dev) 컴퓨터에는 해당 사용자의 서버에있는 홈 폴더에 매핑 된 하나의 드라이브 (M :)가 있습니다. 또한 동적 문서 루트를 설정했습니다. 예 : jimy.www.domain.com은 / home / jimitm / www /와 같은 문서 루트를 가져옵니다. 이제 며칠 전 GIT를 사용하기 시작했습니다. 우리가 직면 한 한 가지 문제는 git status (또는 다른 유사한 명령)은 네트워크 드라이브의 변경 사항을 모든 파일에서 확인해야하므로 시간이 오래 걸립니다.
내가 생각한 것은 문서 루트가 클라이언트 (dev) 컴퓨터 D : 드라이브 (또는 일부 로컬 상태 드라이브)에 있다는 것입니다. 따라서 jimy.www.domain.com의 경우 문서 루트는 D:/www 클라이언트 컴퓨터의

아니면 다른 해결 방법이 있습니까?


왜 당신은 repo의 로컬 작업 사본을 가지고 있지 않습니까? (당신이 D :)에 말했고 서버에 repo (당신은 이미 M :)를 가지고 있습니다.
Dan D.

@DanD. 그러면 파일을 동기화하는 데 1 단계가 더 걸리고 D : 및 M :
jimy

답변:


1

따라서 git는 네트워크 공유에 사용되지만 최적의 파일은 아닙니다. git 파일과 네트워크 공유의 모든 파일을로드하여 무엇이 변경되었는지 확인해야합니다.

네트워크 공유를 사용하면 서버 측에서 폴더를 마운트 할 수 있지만 서버 요청에 대한 성능이 크게 저하되어 코드 테스트를 5-10 초에서 ~ 10-30 초 사이로 늘릴 수 있습니다 마다 . 이는 개발자가 용납하지도 못하는 성과 (및 심리적) 처벌입니다.

이 문제를 해결하는 방법은 다음과 같습니다.

  • 유사한 구성을 사용하여 우리의 솔루션은 서버에 대한 셸 액세스 권한을 가지며 셸에서만 git을 사용했습니다. 이것은 semi-instant git checkout / commit과 보조 서버 측 스크립트, 특히 배치, 롤백 및 유닛 테스트를 허용합니다.

  • 또 다른 인기있는 선택은 모든 사람들이 (가상 환경에서 라이브 환경의 복제본을 설정하여) 로컬 복사본을 작성한 다음 변경 사항을 중앙 저장소에 적용하는 것입니다

이것이 도움이되기를 바라고, 설명이 필요한 경우 의견을 보내주십시오.


아마도 우리는 두 번째 제안을 채택 할 것입니다. 그건 그렇고 첫 제안의 해결 방법을 주셔서 감사합니다.
jimy
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.