/live/website
|
|
/path/to/staging (bare)
| |
| |
dev1 dev2
는 현재 두 디바이스 1 및 디바이스 1에서, /path/to/staging repo
에 프로젝트를 밀어 (또 다른 질문 git : Small project work의 추천 덕분에) 내 자식 작업 구조를 설정했습니다. 내/라이브/웹 사이트에서 git pull
을 자동으로 트리거하는/path/to/staging에 후크가 있습니다. 이 방법으로, 거기에 파일의 작업 복사본이 있습니다.
또한 /path/to/staging (bare)
은 공유 = 0777로 초기화되었으므로 공유가 문제가되지 않는다는 것을 알고 있습니다. 또한, 나는 777에 모든 파일을 CHMODded했고 막대기 비트도 설정했다.
/live/website repo를 user : root
으로 생성했습니다. 그러나 dev1에서 repo를 user : dev1
으로 생성했습니다.
error: Couldn't set refs/remotes/origin/master
From /path/to/staging
! 8b4fddc2 .. e2a0b21 master -> origin/master (unable to update local ref)
To path/to/staging
8c5fddc2 .. e2a0b21 master -> master
을 그리고 기본적으로, 파일이/라이브/웹 사이트에 성공적으로 전송이 표시되지 않는 : 나는 DEV1에서 REPO를 밀어하려고 할 때 그러나, 디바이스 1 미세 변화를 만들 수 있습니다, 여기에 내가 직면하고있는 문제입니다. 나는이 코드가 user : dev1
으로 실행되기 때문에이 문제가 발생한다고 생각한다. 그러나 /live/websit
e로 찾아 git pull
을 수동으로 user : root
으로 입력하면 dev1에서 변경 한 내용을 성공적으로 가져와 작업 파일을 변경합니다.
이 문제를 해결할 방법이 있다면 누군가에게 권장 할 수 있습니까? 나는 그것이 실행될 때, 그러나
su root
password
: 그것은 자동 후크의 목적을 ... 뛰는 때문에 내가하고 생각을 다른
뭔가 훅에 있었다, 나는 사용자를 변경하는 생각 I 나타나는 오류 메시지이기 때문에 내가 프롬프트에서 암호를 입력 있다고 생각하지 않습니다,
hooks/post-receive: line 18: password: command not found
편집
또한 누군가가 푸시에서 돌아갈 방법을 제안 할 수 있습니까? 파일의 이전 상태를 얻으시겠습니까?
루디 : 나는 그 파일을 보았고 sudo visudo 만 수정하면됩니다. 그러나, 나는 그것을 시도하고 실행할 때 :'sudo : visudo : command not found'. 편집은 문제가되는 부분입니다. git 디렉토리 구조의 관점에서 왜 당기기를 실행하는 데 문제가 있는지 알고 있습니까? 제 말은'/ live/website'는 공유 저장소입니다. 나는'git repo-config core '를 사용하여 그렇게 만들었다.sharedRepository true' – g1t
root 계정으로 들어가서 거기에서 visudo를 실행할 수 있습니까? 데비안에서 visudo는 sudo 패키지 (http://packages.debian.org/lenny/i386/sudo/filelist)에 있으며/usr/sbin/visudo에 있습니다. – Rudi
'/ live/website' 부분은 :'/ path/to/staging' 저장소를 아직 설정하지 않았습니까? 그렇다면'/ live/website'는 파일이 보이길 원하기 때문에 non-bare repo 여야합니다. 현재/live/website 경로를 옮기고'/ live/website'의 일반 복제본으로 바꾸는 것이 좋습니다. – Rudi