2014-02-14 3 views
1

나는 프로덕션 서버에 설정 베어 자식 저장소를 가지고, 그것은 내가 거기에 밀어 무엇이든 배포 할 후크를 게시물을 사용납니다롤백 자식 저장소

#!/bin/sh 
GIT_WORK_TREE=/path/to/webroot git checkout -f 

내가

을 배포하려면
git push production 

내 작업장에서 모든 것이 처리됩니다. 그러나 나는 뭔가를 어기는 커밋을 추진하고 최대한 빨리 되돌리려한다고 말한다. 다음 작업을 수행 할 것입니다 :

git push production [id of commit to revert to]:master 

IE는 여전히 웹 루트에 모든 것을 올바르게 배포합니까?

답변

1

예상대로 작동합니다. 프로덕션 마스터의 HEAD에서 잘못된 커밋을 바꾸려면 git push +<commit>:master (+ 참고)을 수행해야 할 수 있습니다.

+<commit>:master은 refspec입니다. refspec에 대한 자세한 내용은 git push manpage을 참조하십시오.

내가 수행하여 프로덕션 서버에 푸시를 강제 할 필요없이 더 명시 적으로 되 돌리는 것이 좋습니다 것

: 그런 경우 How to revert Git repository to a previous commit?

+0

를 참조

git revert <commit to revert> git push production 

또는

git reset --hard <commit to revert to> git push -f production 

, 그럼 어떻게합니까 이 작업은 : git push production [되돌릴 커밋의 ID] : master –

+0

죄송합니다. 내가 무슨 말을하고 있는지 몰랐습니다. – mwhite