2011-08-31 5 views
152

다음 repos 있습니다.자식 원격 원점 설정

  1. DEV의 REPO : 내가
  2. 주요 REPO를 변경하게 내 개발 시스템의 디렉토리에 내 개발 컴퓨터에 노출 된 저장소에있는 내가 dev에의 repo에서
  3. 생산 REPO을 변경을 밀어 : 저장소를 호스트 시스템에 메인 저장소에서 업데이트를 가져 오려면

DEV repo의 원본으로 MAIN 저장소를 설정하려면 git remote add origin /Users/me/sites/main_repo을 사용했습니다. PRODUCTION 저장소가 원격 호스트에 있습니다. 동일한 명령의 변형을 사용하여 MAIN 저장소를 PRODUCTION 저장소의 원본으로 설정할 수도 있습니까? "예"이면 구문에 IP 주소가 포함되어 있다고 가정합니다. 그게 어떻게 생겼어?

git remote add origin http://IP/path/to/repository 

배포 프로세스가 일반적으로 나쁜 생각이며 실제 배포 스크립트에 찬성 피해야한다 그러나 간단한 git pull를 가진 HTTP

를 사용하여 SSH

git remote add origin ssh://[email protected]/path/to/repository 

를 사용

답변

238

.

+6

은 왜 정말 나쁜 생각 (표시된 대답은 정확한지, 난 그냥 하하 ... 내가했다으로 손실로 사람을 도와 바라고 있어요)? 이제 배포 스크립트 예제에 대한 검색을 수행합니다. – Jay

+14

배포는 종종 'git pull'이하는 것 이상으로 의미가 있기 때문에 ("always"로 읽음). 프로덕션 DB 자격 증명을 설정하고, 캐시를 지우고, 버전 번호를 늘리고, 잘못된 버전이 있으면 롤백 할 수 있도록 이전 버전을 백업하고, 자산 (예 : CSS 및 Js)을 최적화/축소해야 할 수 있습니다. 소지품. –

+32

@ClementHerreman - 설명에 따르면 git pull을 사용하는 것이 제한된 해결책이므로 "나쁜 생각"이 아닙니다. 때로는 간단한 시나리오가있을 때 git pull을 사용하여 완벽하게 효과적이고 간단한 배포 솔루션을 찾는 경우가 있습니다. – Brady

12

당신은 리모컨을 설정할 때 예상대로 작동하는 것을 계속 추적 할 지점을 포함 할 수 있습니다 :이 수동으로 자식의 설정을 편집하거나 수동으로 추적 지점을 지정할 필요에서 당신을 유지

git remote add --track master origin [email protected]:group/project.git # git 
git remote add --track master origin [email protected]:group/project.git # git w/IP 
git remote add --track master origin http://github.com/group/project.git # http 
git remote add --track master origin http://172.16.1.100/group/project.git # http w/IP 
git remote add --track master origin /Volumes/Git/group/project/   # local 
git remote add --track master origin G:/group/project/      # local, Win 

합니다.

76

다른 곳의 출처를 변경하려면 여기에서 해당하는 사람에게 문의하십시오. 여기에서 해당 설명서를 찾을 수 있습니다 : https://help.github.com/articles/changing-a-remote-s-url/. git remote add을 사용하면 "치명적 : 원격 원점이 이미 있습니다."라는 결과가 발생합니다.

요컨대 : 이 git remote set-url origin https://github.com/username/repo

+0

이 답변은 "git remote url" 이미 존재하는 경우. 감사합니다 @ lostphilosopher – eonist