불러오는 중

출처를 불러오는 중… 모든 파일

    개요

    Branchwise는 명령줄에서 git을 가르칩니다. 모든 레벨은 커밋 그래프로 그려진 작은 저장소에서 시작하고, 그 옆에 목표가 그려져 있습니다. 실제 git 명령을 입력하면 실행할 때마다 그래프가 바뀌고, 저장소가 목표와 같아지는 순간 레벨을 깹니다. 어떤 방법으로 도착했는지는 상관없습니다.

    34개의 레슨은 git init과 스테이징 영역에서 시작해 브랜치, 병합과 충돌, 태그, 작업 되돌리기를 거쳐 cherry-pick, 대화형 리베이스, rebase --onto, --autosquash를 쓰는 fixup 커밋, --update-refs로 쌓은 브랜치, 팀원의 origin과 주고받는 fetch, pull, push, force-with-lease, bisect, 워크트리까지 이어집니다. 명령은 오류까지 포함해 git처럼 응답합니다.

    제작
    wasmga.me
    출시
    2026

    조작 안내

    명령줄에서

    키동작
    Type명령 입력. git 명령과, 레슨에서 쓰는 cd, edit, make test, ls
    Enter명령 실행, 빈 줄에서는 일시 정지
    위/아래이전 명령
    왼쪽/오른쪽커서 이동
    클릭/터치커밋은 ID를, 브랜치나 태그는 이름을 명령에 넣습니다

    리베이스 할 일 목록에서

    키동작
    위/아래줄 고르기
    P, S, F, Dpick, squash, fixup, drop 중 하나로 바꾸기
    K/J줄을 위나 아래로 옮기기
    Enter리베이스 시작
    Q/Backspace아무것도 바꾸지 않고 나가기

    요약표

    git이 아닌 것

    hint
    이 레벨에 대한 귀띔
    solution
    레벨을 깨는 방법 하나 (힌트보다 감점이 큼)
    undo
    무언가를 바꾼 마지막 명령 되돌리기
    clear
    출력 지우기

    커밋 가리키기

    HEAD, @
    지금 있는 곳
    main~2
    첫 번째 부모를 따라 두 커밋 전
    main^2
    병합 커밋의 두 번째 부모
    HEAD@{1}
    HEAD가 한 번 움직이기 전에 있던 곳 (reflog)
    @{u}
    브랜치의 업스트림, 예를 들어 origin/main
    -
    switch나 checkout과 함께 쓰면 직전에 있던 곳

    점수

    1000
    레벨마다, 가장 짧은 방법만큼의 명령만 썼을 때
    -100
    그보다 많이 쓴 명령 하나마다
    -250
    힌트 한 번마다, solution은 두 번으로 계산

    팁

    1. 그래프가 예상과 다르면 git status와 git log --all을 실행하세요. 그림에 보이는 내용을 글로 보여 줍니다.
    2. 흐리게 보이는 커밋은 이제 어떤 브랜치, 태그, HEAD에서도 닿지 않는 커밋입니다. 그래도 남아 있고, reflog로 찾을 수 있습니다.
    3. 레벨은 최종 결과만 확인하므로 목표에 닿는 길이라면 무엇이든 됩니다. 길이 짧을수록 점수가 좋습니다.
    4. 커밋 ID를 직접 입력할 일은 드뭅니다. 커밋을 탭하거나, 브랜치에서 ~로 거슬러 세면 됩니다.