2016-08-17 3 views
1

문제와 SATIS를 사용하는 적절한 방법의 새로운 기능 :공유 내부 라이브러리

I는 엔티티를 가지고 심포니 작성이 개 프로젝트에 대해 동일합니다. 프로젝트간에 공유 할 아이디어가 있습니다. 첫 번째 아이디어는 git 하위 모듈을 사용하는 것이지만 모두가 가장 안락한 해결책이 아니라는 것을 모두 알고 있습니다. 그래서 우리는 그들을 Satis에 별도의 자식 저장소로 저장합니다.

하나의 프로젝트에서 나는 그들을 디렉토리에 다운로드 할 수있는 다른 응용 프로그램 디렉토리 src/AppBundle/Entity에서 편집하고 싶습니다.

질문은 작곡가를 설치하여 vendor 디렉토리가 아닌 작업자와 함께 작업 할 수있는 방법입니다. 커밋은 어떻게 생겼을까요? 이 자식 하위 모듈이 필요합니까?

나는 이미 "type" : "path" 리포지토리에 대해 읽었으며, 나는 작곡가 설치 프로그램을 검사했다. symlink 이외의 해결책이 있습니까?

그래서 요약 해주세요.

하나의 프로젝트에서 공유 라이브러리로 작업하는 방법은 app 디렉토리에서하고 다른 하나는 공급 업체 디렉토리에서 수행 하시겠습니까?

+0

필자는 Composer의'--prefer-source' 옵션으로 시도해 볼 수 있다고 생각합니다. 나는 그것을 시도하지 않았으므로 답변으로 게시하지는 않겠지 만이 링크가 도움이 될 수 있습니다. http://dimsav.com/blog/9/git-repository-inside-composer-vendors –

+0

소스를 다운로드하는 것이 좋습니다. gitlab/gitlab 등에서 packagist/satis 대신에 이것은 유용하지 않습니다 – Robert

+0

그것은 composer.json 구성에 따라 다운로드 할 것입니다. 저장소가 어디에 있든 상관 없습니다. –

답변

0

이것은 나를 위해 일한 해결책입니다.

프로젝트에 내부 라이브러리를 복제했습니다.

주요 프로젝트에서

나는 .gitignore이 디렉토리를 추가했고 composer.json에 내가 추가 한 다른 프로젝트에만 satis 저장소에서 다음 줄

"repositories": [ 
     { 
      "type": "path", 
      "url": "internal-library", 
      "options": { 
       "symlink": true 
      } 
     }, 
     { 
      "type": "composer", 
      "url": "http://our-satis" 
     } 
    ], 

을 (엔티티가 될 것입니다 추가 한 한 프로젝트에서만 변경되고 다른 프로젝트로 가져 오기).

"repositories": [ 
      { 
       "type": "composer", 
       "url": "http://our-satis" 
      } 
     ], 

은 이제 개발에 나는 작곡가 라이브러리는 공급 업체 디렉토리에 심볼릭 링크되어 갱신 할 때. 이 디렉토리가 없다면 만족 스러울 것입니다. 내 디렉토리가 존재하지 않기 때문에 생산 저장소에서 만족 스러울 것입니다. PSR 로딩에 몇 가지 문제가 있었지만 모든 것이 예상대로 작동합니다.

나는 그것이 내가 가진 것과 동일한 이슈를 가진 누군가를 도울 수 있기를 바랍니다.