카테고리 보관물: Tools & Tips

Bare git으로 부터 source code 복사하기

Android에 기반한 project를 repo로 mirror로 만들때는 –mirror option을 주어서 bare git을 만든다(지난 posting 참조). 만약 이렇게 만들어진 bare repository로 부터 일반적인 형태의 source repository를 생성하려 한다면 어떻게 해야 할까? 이 posting에서는 git-daemon등을 설치 하지 않고 local에 있는 bare git으로 부터 source 구조를 만들어 내는 방법을 설명한다.

Repo Init

$ repo init help
Usage: repo init -u url [options]

repo init 명령을 수행할 때 -u 뒤에 url을 적어준다. 일반적으로 이 부분에 ‘git://’이나 ‘ssh://’ protocol로 시작하는 주소를 적지만 우리가 하려는 것은 file 복사 이므로 ‘file://’을 적어서 repo init을 수행한다.

$ repo init -u file://PATH_TO_MIRROR -b BRANCH -m MANIFEST_XML

놀랍게도(!) init이 수행되면서 .repo directory가 생성된다.

Fetch Address 수정

.repo/manifests에서 fetch address를 가지고 있는 xml file을 찾아서 접근 address를 file경로로 수정한다.

  <!-- 
  <remote name="REMOTE_NAME" fetch="ssh://SERVER_IP" review="REVIEW_ADDRESS:8080"/> 
  -->
  <remote name="REMOTE_NAME" fetch="file://<path_to_mirror>/" review="REVIEW_ADDRESS:8080"/>

init이 완료 되고 난 후에는 일반적인 것과 같이 repo sync 명령어를 수행하면 된다. file://로 수정한 xml file들을 원래 상태로 되돌리는 건 다들 아실테고 … 😉

WARNING: terminal is not fully functional

mac에서 git관련 command나 man 명령어와 같이 more/less를 사용하는 실행을 할 때 다음과 같은 경고가 출력되는 경우가 있다.

WARNING: terminal is not fully functional
- (press RETURN)

max os x의 경우 $TERM값이 기본적으로 xterm-256color로 설정되는데, Xcode를 설치 할 때 terminal관련 정보가 삭제되서 이 문제가 발생한다고 한다. 간단하게는 터미널 -> 환경설정 -> 고급에서 ‘터미널을 다음과 같이 선언’ 항목을 xterm-256 color가 아닌 다른 값으로 변경해 주면 쉽게 해결 할 수 있다. (터미널 종료 후 재실행)

또는 solaris나 linux와 같은 다른 시스템에 있는 xterm-256color를 mac os x로 복사해서도 사용할 수 있다. 가령 linux의 경우 term-256color file이 /usr/share/terminfo/x/xterm-256color에 위치 하므로 ssh 접속을 할 수 있다면 다음 command로 mac os x 의 /usr/share/terminfo/78/ 아래로 복사해 올 수 있다.

$>sudo scp 계정@리눅스:/usr/share/terminfo/x/xterm-256color /usr/share/terminfo/78/

 

썬더버드에서 아웃룩으로 돌아가기

메일 클라이언트를 3년동안 써왔던 썬더버드에서 다시 MS아웃룩으로 되돌려야 했다.

  • 붙여넣기한 excel이 제대로 보이지 않는다.
  • MS 아웃룩에서 직접 편집한 이미지들이 제대로 보이지 않는다.
  • 회사에서 ‘공식적으로’ 지원되는 프로그램이 아니다.

마지막 이유는 참 웃긴데, 메일에 관련된 문제가 있어서 IT부서에 연락하면 늘 듣는 말이 이거다. 무슨 대응 메뉴얼 같은게 있는 걸까?

여쨌든 3년간 쌓아 놓은 메일들을 썬더버드로 옮겨야 하는데, 썬더버드에서 지원하는 eml 형식을 MS아웃룩에서는 더이상 지원하지 않기 때문에 직접 옮길 수 있는 방법이 없다. 그래서 IMAPSize로 썬더버드의 mbox 형식메일들을 eml로 변환하고, 그것들을 eml 형식을 지원하는 Windows Live Mail로 변환한 다음에 export해서 MS아웃룩으로 가져오는 아주 아주 번거로운 쓰리쿠션을 해야한다.

  1. IMAPSize
    : 썬더버드의 mbox 형식 메일들을 eml로 변경해 준다. 하지만 다국어 지원에 관련된 문제 때문인지 일부 메일들은 제대로 변환하지 못했다.
  2. Windows Live Mail
    :  eml 형식을 지원하는 Outlook Express를 windows7에는 설치할 수 없다. 그래서 Windows Live Essential에 포함되어 있는 Windows Live Mail을 이용한다. 주의해야 할 점은 MSN을 포함한 모든 Windows Live package들이 최신버전으로 업데이트 된다는 것이다. MSN live의 최신 버전은 경우 windows7에서 사용할 때 로그인을 하지 못하는 문제가 있는데, 이 프로그램을 사용한 후에 다시 예전 버전의 MSN live 메신져로 되돌려야 해결된다.

리눅스와 MS윈도를 번갈아 가면서 쓰는일이 많았기 때문에 MS윈도에 만들어 놓은 썬더버드 폴더로 리눅스에서 symbolic link를 걸어 두고 양쪽에서 하나의 메일함 폴더를 사용하는 게 참 편했는데 더 이상 그렇게 하지 못하는 점이 아쉽다.