2013-06-28 3 views
0

안녕하세요, 저는 자식과 관련된 완벽한 놈입니다. 환경 설정에 관한 질문이 있습니다. 내가 가상 호스트로 다음 사이트 설정을 가지고있는 내가 우분투 리눅스 서버가표현 엔진을위한 git와 다중 환경 설정하기

:

www.mydomain : 개발 : 고객 승인을위한 환경을 준비
dev.mydomain을 테스트 : stage.mydomain이
생산 환경 새로운 코드를 테스트하기위한 환경

또한 로컬 개발 환경으로 MAMP 설정이 있습니다.

내가 할 수 있기를 원하는 것은 www.mydomain을 repo로 사용한 다음 무대로, 무대에서 개발자로, 그리고 개발자에서 로컬로 복제하는 것입니다. 나는 이것을 이미 성공적으로 해냈다.

로컬 작업에 만족하면 파일을 추가/커밋 한 다음 서버 테스트를 위해 dev로 다시 푸시합니다.

이제 dev.mydomain을 오류없이 원격으로 푸시 할 수 있었지만 파일을 검사 할 때 추가/커밋을 포함하도록 업데이트되지 않았습니다.

어떤 사람이 도움을 줄 수 있습니까? 나는 이것이 어떻게 작동하는지 오해하고 있는가? 만약 그렇다면 어떻게 변경을 dev.mydomain 파일 시스템에 적용하여 테스트 할 수 있을까?

어떤 도움을 주시면 감사하겠습니다.

답변

0

이제 오류없이 dev.mydomain으로 원격 푸시 백을 수행했지만 파일을 검사 할 때 추가/커밋을 포함하도록 업데이트되지 않았습니다. upstream remote의 repo에 밀어

의미

  • 가 추진하는 bare repo
  • 또는 에 밀어 (참조 할 파일이없는 것을 의미 원격 REPO에는 작업 트리가 없습니다!) non-bare repo이지만 그 경우 이 체크 아웃되어 있지 않은 지점을 푸시하는 경우 오류없이 을 수행 할 수 있습니다. 원격 저장소에이 있습니다.
    즉, 해당 업스트림 저장소의 현재 보이는 파일의 이 없습니다.이 수정되었습니다.
    그게 푸시를 허용하는 모든 지점입니다 : 체크 아웃 된 지점 HEAD와 당신이 밀고있는 HEAD 사이에는 불일치가 없습니다. 문제는 "git push error: refusing to update checked out branch"에 자세히 설명되어 있습니다.

그래서 내가 추천 :

  • A A 베어 dev에 환매 특약,
  • 그것을 밀어
  • 을 설정하고 필요 (이 시간을 두 번째 dev에의 repo에가는 훅을 포스트 - 수신 비 - 베어)와 (업데이트 된) 맨손으로 repo에서 당겨.
    예를 들어 this answer을 참조하십시오.
+0

설명해 주셔서 감사합니다. 여러 환경에서 배포하는 방법에 대해 의견이 엇갈 렸습니다. 이것은 지금 나를 위해 그것을 깨끗하게했다, 고마워! –

관련 문제