글 한 편의 수정 이력을 깃으로 남기기를 거꾸로 쓰는 창작 제안이다. 세 문장을 쓰고 마지막 문장을 하나씩 덜어낸다. 현재 파일은 짧아지지만 이력에는 앞선 상태가 남는다. ‘방에 문장이 세 개 있다’는 말은 마지막에 혼자 남아 숫자에 대한 책임을 지게 된다.
세 번 기록하기
- Git이 설치되어 있는지 확인하고 기존 저장소 밖의 연습 공간에서 시작한다. 아래는 macOS, 리눅스 셸 또는 Git Bash용이다.
disappearing-poem이 없는지 확인한다. 이미 있다면 첫 두 줄의 폴더 이름을 새 이름으로 함께 바꾼다.- 아래 명령을 한 줄씩 실행하며 매 커밋 직전의
poem.txt를 읽는다. 폴더 생성과 이동을 포함해 오류가 나면 그 자리에서 멈춘다. 시구는 이 실험을 위해 작성한 예문이다. - 마지막에
poem.txt에는 한 문장, 마지막 명령의 출력에는 처음의 세 문장이 있는지 비교한다. - 삭제한 이유를 커밋 메시지로 바꿔 써본다. 파일 내용 밖의 말도 작업을 읽는 단서가 될 수 있다.
mkdir disappearing-poem
cd disappearing-poem
git init
git config user.name "연습 기록자"
git config user.email "[email protected]"
printf '방에 문장이 세 개 있다.
둘은 창문을 보고 있다.
하나는 출구를 찾는다.
' > poem.txt
git add poem.txt
git commit -m "세 문장"
printf '방에 문장이 세 개 있다.
둘은 창문을 보고 있다.
' > poem.txt
git add poem.txt
git commit -m "마지막 문장을 덜다"
printf '방에 문장이 세 개 있다.
' > poem.txt
git add poem.txt
git commit -m "한 문장만 남기다"
git log --oneline
git show HEAD~2:poem.txt
삭제를 언제나 흔적의 소멸로 생각할 수는 없다. 이 연습은 이전 내용을 이력에 남기므로 공개하면 안 되는 문장을 지우는 절차가 아니다. 보이지 않는 옛 문장까지 작품으로 포함할지는 별도의 선택으로 남는다. 마지막 판본을 인쇄한다면 빈 두 줄을 남기는 경우와 남은 한 줄을 위로 당기는 경우도 비교해볼 수 있다. 문장을 지운 자리의 크기를 재는 삭제의 행간은 내용의 이력과 다른 문제다.