Jupyter 노트북 파일은 무식하게 요약하면,
- 소스 코드
- 마크다운 문서
- 실행 결과
들이 각각 셀 단위로 묶인 XML 문법 파일이라고 할 수 있습니다.
이에 따라 버전관리 툴의 일반적인 비교, 병합 툴로는 노트북 파일을 어떻게 효율적으로 저장할 지 알 길이 없습니다.
예를 들어, 소스코드 변경사항만 저장하고 싶은데, 비교 툴은 어디가 소스이고 어디가 실행결과인지 모르니 그렇게 안 된다는 거죠.
이를 해결하기 위해 nbdime
플러그인을 사용해볼 수 있습니다. 노트북 문서를 소스코드 (및 문서 셀) 위주로 비교, 병합하는 기능을 제공하는 플러그인인데요. 문제가 있습니다...
- 개발 진척도가 그리 빠르지는 않은 것 같고...
- 비교, 병합 속도가 느으으리며...
- 출력 셀 비교, 병합은 개발 목표가 아니라고 하며...
곧 JupyterLab이라고 해서 다음 세대 버전 나온다는데, 걔는 이 플러그인이 지원하지 않겠지...딱히 상관 없는 것 같네요.
따라서, 프로덕션 수준은 아닌 것 같으니 각자 목적에 맞는지 시험 사용을 해 본 후 본격적으로 써 보시기 바랍니다.
설치
설명서에 나와 있는 대로 pip install nbdime
, 또는 Anaconda 환경이라면 conda install -c conda-forge nbdime
하면 됩니다.
Git 연동
nbdime를 쓰려는 Git 저장소 디렉토리에서 nbdime config-git --enable
하면 됩니다..gitattributes
파일 및 git config -l
명령 결과에서 정상 적용 여부를 확인할 수 있다고 하네요.
반응형
'팁' 카테고리의 다른 글
Logrotate에서 띄우는 "File size changed while zipping" 메시지 피하기 (0) | 2019.02.19 |
---|---|
파워포인트 슬라이드쇼와 터치+펜 필기 노트북 문제 (서피스 프로를 중심으로) (0) | 2018.09.20 |
Xilinx Vivado 2017.x가 Windows 10 RS3 이후로 실행 안 되는 문제 회피 (0) | 2017.12.02 |
Caffe-TensorFlow 사용 실패하기 (0) | 2017.11.16 |
Ubuntu MATE 16.04 설치 (0) | 2017.11.02 |