dropbox_git

 

요즘 git의 도움으로 코딩 작업이 한결 수월해 졌다.

특히 별도의 압축->백업 관리의 잔업이 없어졌고

웹작업 시 coda2에서 localhost로 미리보기까지 해주어 편하게 작업하고 있다.

(coda2에서 publish 전에 http://localhost/~ID 에서 미리보기 하면서 디버깅한다.)

한가지 아쉬운 점이 있는데, 상황에 따라 데스트탑, 노트북을 번갈아가면서 작업하다 보니,

작업 PC를 바꾸기 전에 반드시! git commit  후 원격저장소에 push -> 옮겨갈 PC 에서 pull 해야만 작업을 이어갈 수 있다.

간혹 실수로 push 하지않고 작업을 하다가 다시 이전 PC에서 push하고 mergy 하는 해프닝이 발생하기도 한다.

또한 이렇게 작업을 하다보면 commit가 무수히 많아져 history를 지저분하게 한다.

Cloud 를 이용하여 PC가 git 로컬저장소를 동기화 할 수 있다면 이런 불편함이 없어지지 않을까? 하여 시도해 보았다.

 

작업 환경

OS : OS X 메버릭 10.9.4

웹서버 : 아파치 (OS X 기본제공)

 

Cloud 서비스 선택

필자는 UCloud의 빠른 속도에 반해 2년여 동안 사용하다가 최근 PC간 동기화 서비스가 중단되어 NDrive로 갈아탔다.

그러나, NDrive로 숨김폴더인 .git 폴더 파일들을 동기화 할 때 오류가 발생했다.

속도는 좀 느리지만 Dropbox는 이러한 오류가 발생하지 않았다.

Dropbox : git 저장소 동기화 가능

NDrive :  git 저장소 동기화 오류 발생

UCloud : PC간 동기화 안됨

dropbox-logo1

 

동기화 폴더 설정

Dropbox의 동기화 루트 폴더명은 반드시 “Dropbox”로 해야한다.

웹 개발 시 로컬 파일의 미리보기 시도 시 보통 “http://localhost/~ID” URL로 본다.

그런데, Dropbox 폴더 또는 그 하위 폴더를 해당 도큐먼트 루트로 설정하면 403 에러가 발생하게된다.

일반적으로 /USers/ID/Sites 폴더를 웹 루트로 사용하는데 /Users/ID/Dropbox로 변경하면 호출이 안된다.

Sites 폴더명 이외의 것을 사용하는 것이 문제인 듯 한데,

이 문제로 서치 해 본 결과 여러가지 트릭들이 있는데 그 중에서 아래 방법이 가장 간편해 보였다.

 

$ rm -r /Users/계정명/Sites <– 기존 웹 루트 폴더를 삭제한다.

$ ln -s /Users/계정명/Dropbox /Users/Sites

 

git 로컬 저장소 동기화의 문제점

PC2대에서 동시에 git 저장소 관리툴(Sourcetree)를 실행해보니 index, FETCH_HEAD 파일이 계속 수정되면서 Dropbox 동기화가 발생하였다.

아마도 .git 폴더 내에 해당 PC에 국한된 정보가 있는게 아닌가 생각된다. 그러나, 작업 시 특별한 문제는 발생하지 않았다.

단, 무한 동기화를 방지하려면 동시에 여러 PC에서 해당 git 프로젝트 작업을 하지 않는 것이 좋겠다.

 

카테고리: Development

댓글 남기기