내가 이것을 위해 나는 REPO을 만들어 지금 --bare
왜 원격 저장소에 변경 사항이 반영되지 않습니까?
cd /var
mkdir demorepo && cd demorepo
mkdir demo.git && cd demo.git
git init --bare
와 함께 시작하는 VPS (A 디지털 오션 물방울)에 배포하는 설치 추진에 노력하고는 REPO에 후크 디렉토리에 post-receive
라는 훅을 만들어 내 로컬 컴퓨터에
chmod +x post-receive
를 사용
#!/bin/sh
git --work-tree=/var/www/demo --git-dir =/var/demorepo/demo.git checkout -f
설정 권한은 새로운 창조 폴더 \www\demo.git
에 git init
와 REPO 및가 이제 I 로컬 REPO 새로운 파일을 생성하고
git push live master
푸시를 사용하여 가압 live
git remote add live ssh://[email protected]/var/demorepo/demo.git
같은 문제점을 원격 REPO 추가 하지만 변경 사항은 원격 저장소에 반영되지 않습니다. 내가 뭘 잘못 했니?
스크립트를 수동으로 실행하면'/ var/www/demo'에서 작업 폴더를 업데이트합니까? 예를 들어,'--git-dir' 다음에 공백을 추가하는 것이 의도적입니까? –
나는 그것을 시도하지 않았다. 나는'#!/bin/sh'의 의미를 이해하지 못하기 때문에. (나는 그것을 튜토리얼을 따라 작성했다.) (수동으로 실행하는 동안'#!/bin/sh'을 의미하는 것을 이해할 수 있도록 도와 주시겠습니까?) –
먼저 git 명령을 독립 실행 형으로 실행해야합니다. 그러면 post-receive에 배치 할 수 있습니다 스크립트. 명령이 독립형으로 작동하지 않으면 스크립트가 작동하지 않습니다. –