git 웹 개발 버전 관리
2811 단어 웹 개발
우리가 해야 할 일:
1. 서버에 버전 창고 만들기;
2, 서버에 안정적인 버전의 사이트를 구축하고 버전 창고의hooks를 작성한다.
3, 개발 서버에 개발 버전 제출;
다음 단계는 다음과 같다. (예를 들어git)
1. 서버에 버전 관리 창고를 구축한다.디렉터리를/git/로 가정하고 이 디렉터리로 전환합니다.하나의 공사를 세우다
cd /git/
mkdir project.git
git init --bare
2, 서버에 안정적인 버전의 사이트를 구축한다. 예를 들어 디렉터리는/home/www이다.다음은 요점입니다. 갈고리 훅스:
cd /git/project.git
cp hooks/post-receive.sample hooks/post-receive
vim hooks/post-receive
#
GIT_WORK_TREE=/home/www git checkout -f
3, 개발 서버에 개발 버전 제출;디렉토리가/git/project/인 경우
ssh-keygen
ssh-copy-id -i ~/.ssh/id_rsa.pub git@yourserver
git init
git add *
git commit -a -m "init a version"
git remote add origin git@youserver:/git/project.git
git push origin master
이때/home/www를 보면 파일이 업데이트되었을 텐데...
화려한 구분선
이런 방법은 생산 서버에서도 버전 관리를 구축했다. 이렇게 하면 서버 자원을 소모하고 원본 코드 유출(예를 들어 어떤 개발 버전이 비밀번호를 모두 썼는데 결과는 상상할 수 없다) 등 다른 안전 위험을 가져올 수 있기 때문에 뒤의 개발에서 우리는 Git+Rsync의 구조를 사용하고 내부 네트워크 개발 서버에 GitLab을 설치하여 원본 코드 관리를 하고 rsync 클라이언트를 구축하여 코드 동기화를 한다.운영 서버는 Rsync 서버 모니터링 포트만 사용하여 동기화 요청을 수신합니다.
GitLab 구축 참고:
https://github.com/gitlabhq/gitlab-recipes/tree/master/install/centos
http://www.pickysysadmin.ca/2013/03/25/how-to-install-gitlab-5-0-on-centos-6/
Gitlab에 비해 저는 Gitolite + Gitweb를 사용하여 코드 검토를 하는 것을 좋아합니다. 왜냐하면 그들의 설치가 좀 더 간단하고 Gitweb의 코드가 간단하기 때문에 우리는 기능의 추가를 쉽게 할 수 있습니다. 예를 들어 우리가 이전에 추가한 증량 업데이트 기능입니다.
Rsync의 구축은 참고할 수 있습니다이 문장 .
셸 스크립트를 쓰거나 php를 사용하여 웹 명령을 동기화하는 것은 좋은 생각입니다. 우리는 php가 셸 명령을 실행하여 동기화하는 것을 사용합니다.
또한 여러 개의 생산 서버에서 코드 동기화를 하려면rsync+inotify를 사용하여 실시간 동기화를 할 수 있다. 이렇게 하면 인터넷 개발 서버가 메인 서버에 코드를 동기화한 후,inotify 모니터링 스크립트는 다른 생산 서버를 동기화할 수 있다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Emacs에서 디폴트보다는 편하게 JSP를 쓰고 싶다.Emacs에서 JSP(JavaServer Pages)를 쓰게 되었지만 코드 성형 설정이 없었다. CentOS 6 GNU Emacs 23.1.1 STEP 1 의 다운로드에서 파일을 다운로드합니다. (나는 Github에...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.