Skip to content

레포 준비 ​

ResearchTree는 레포 하나를 연구 프로젝트 하나로 다뤄요. 뷰어를 열기 전에 연구 레포에서 세 가지를 먼저 준비해 주세요.

1. research 브랜치 만들기 ​

research는 연구 트리의 뿌리(루트) 역할을 해요. 모든 실험의 출발점이 되는 초기 구현 코드이자, 채택된 실험이 최종적으로 모이는 브랜치입니다. 초기 구현을 마친 커밋에서 브랜치를 만들어 주세요.

bash
git switch -c research
git push -u origin research

main이나 develop 같은 브랜치는 일반 개발이나 배포 용도로 그대로 사용하시면 돼요. 이 브랜치들과 관련 PR은 연구 트리에 표시되지 않습니다.

다른 이름을 쓰고 싶다면

루트 브랜치 이름(research)과 실험 브랜치 접두사(experiment/)는 기본값일 뿐이에요. 레포 설정에 맞게 바꾸고 싶다면 뷰어의 브랜치 설정에서 자유롭게 변경할 수 있습니다. 가이드에 나오는 research와 experiment/ 표기는 직접 설정한 이름으로 생각하고 읽어주세요.

레포에 루트 브랜치가 아직 없다면, 뷰어에 트리 대신 "research 브랜치가 없습니다"라는 안내 메시지와 함께 생성 명령어가 표시돼요. 해당 화면에서 곧바로 브랜치 설정을 열 수도 있습니다.

2. 머지 후 브랜치 자동 삭제 끄기 ​

GitHub 레포의 Settings → General → Pull Requests에서 "Automatically delete head branches" 설정을 꺼주세요.

머지된 부모 실험 브랜치가 삭제되면, 이를 바탕으로 파생된 자식 PR의 base 브랜치가 바뀌면서 트리 관계가 꼬일 수 있어요. 기각된 실험 브랜치 역시 소중한 연구 기록이므로 지우지 마세요.

3. 첫 버전 태그 research/v1 붙이기 ​

research 브랜치의 초기 구현 커밋에 버전 태그 research/v1을 달아줍니다. 이후 채택된 실험이 research로 머지될 때마다 research/v2, research/v3처럼 태그를 붙여가며 연구의 큰 줄기를 기록해요 (research 버전 태그).

bash
git switch research
git tag -a research/v1 -m "v1: 초기 구현"
git push origin research/v1

태그가 없어도 트리는 정상적으로 표시돼요. 다만 이 경우 research 브랜치 하나만 루트로 잡히고, 뷰어에 버전 기념탑은 나타나지 않습니다.

4. 첫 실험 열기 ​

bash
git switch -c experiment/baseline research/v1     # research/v1 태그에서 실험 브랜치 따기
# ... 코드 수정, 커밋 ...
git push -u origin experiment/baseline

GitHub에서 base를 research로 지정해 Draft PR을 열고, 본문 맨 위에 아래와 같이 YAML 블록을 작성합니다.

markdown
```yaml
parent: research@v1
hypothesis: 기준 설정 그대로 학습하면 val_loss 2.9 안쪽으로 수렴한다
change: 기준 학습 설정
tags: [baseline]
```

## 메모
첫 실험.

자세한 형식은 PR과 본문 YAML 문서를 참고해 주세요. 준비를 마쳤다면 이제 중앙 웹, VS Code 확장, 로컬 실행 중 편한 방법으로 트리를 열어보세요!