고치다 망가져도 돌아갈 수 있게: 되돌리기를 만들어두는 법
버전 관리를 사진 찍기에 비유해 설명하고, 폴더 복사부터 시작하는 방법과 알아야 할 용어 네 개, 언제 저장해야 하는지를 정리했습니다.
왜 자꾸 처음으로 돌아가게 되는가
AI에게 요청해서 뭔가 만들고, 고쳐달라고 하고, 또 고치고. 그러다 어느 순간 처음보다 엉망이 되어 있습니다. 되돌리고 싶은데 어디로 돌아가야 할지 모르겠습니다. 결국 처음부터 다시 시작합니다.
비개발자가 가장 많은 시간을 잃는 지점이 여기입니다. 실력 문제가 아니라 되돌아갈 지점을 안 만들어둔 문제입니다.
개발자들이 쓰는 도구가 있지만, 용어부터 어렵습니다. 여기서는 개념을 먼저 잡고, 딱 필요한 만큼만 정리합니다.
저장은 두 종류다
우리가 아는 저장은 "지금 상태를 덮어쓰기"입니다. 이전 상태는 사라집니다.
개발에서 쓰는 저장은 다릅니다. **"지금 상태를 사진 찍어두기"**에 가깝습니다. 사진을 여러 장 찍어두면 언제든 그 시점으로 돌아갈 수 있습니다. 사진마다 "여기까지는 로그인이 잘 됐음" 같은 메모를 붙여둘 수 있습니다.
이게 버전 관리입니다. 이름이 어렵지 하는 일은 단순합니다.
왜 이게 필요한가
세 가지 상황에서 확실히 값을 합니다.
고치다 망가졌을 때. 마지막으로 잘 되던 사진으로 돌아가면 됩니다. 처음부터 다시 할 필요가 없습니다.
언제부터 이상해졌는지 찾을 때. 사진을 하나씩 거슬러 올라가며 확인하면, 어느 시점에 문제가 생겼는지 알 수 있습니다. 그러면 그 사이에 바꾼 것만 보면 됩니다.
여러 가지를 시도해볼 때. 지금 상태를 그대로 두고 다른 방향으로 시도해볼 수 있습니다. 잘 되면 합치고, 아니면 버리면 됩니다.
세 번째가 특히 비개발자에게 큰 차이를 만듭니다. 되돌릴 수 있다는 걸 알면 훨씬 과감하게 시도하게 되고, 그 시도 횟수가 곧 실력이 됩니다.
가장 단순한 방법부터
도구를 배우기 전에, 지금 당장 할 수 있는 것이 있습니다.
잘 되는 상태가 나오면 폴더를 통째로 복사해두세요. 이름에 날짜와 상태를 적어두면 됩니다.
내프로젝트
내프로젝트_0911_로그인까지됨
내프로젝트_0912_목록화면추가
투박하지만 확실하게 작동합니다. 그리고 이것만 해도 "처음부터 다시"를 거의 막을 수 있습니다.
단점은 폴더가 쌓이고, 무엇이 달라졌는지 비교하기 어렵다는 것입니다. 프로젝트가 길어지면 도구를 쓰는 게 나아집니다.
도구를 쓴다면 알아야 할 단어 네 개
용어가 많아 보이지만 처음에는 네 개면 됩니다.
- 저장소(repository): 프로젝트 하나가 담기는 공간. 프로젝트 폴더라고 생각하면 됩니다.
- 커밋(commit): 사진 한 장 찍기. 메모를 함께 남깁니다.
- 푸시(push): 찍은 사진을 인터넷의 내 공간에 올리기. 컴퓨터가 고장나도 남습니다.
- 브랜치(branch): 지금 상태를 두고 옆길로 시도해보기.
처음에는 앞의 세 개만 써도 충분합니다. 브랜치는 나중에 필요해지면 그때 배우면 됩니다.
AI 코딩 도구 중에는 이걸 대신 해주는 것들이 있습니다. 쓰고 있는 도구에 변경 기록이나 되돌리기 기능이 있는지 먼저 확인해보세요. 있다면 그것부터 쓰는 게 가장 빠릅니다.
사진을 언제 찍어야 하나
뭔가 하나가 제대로 동작할 때마다 찍는 게 기준입니다.
- 화면이 처음으로 제대로 떴을 때
- 저장 기능이 동작하기 시작했을 때
- 디자인을 한 차례 정리했을 때
- 배포가 성공했을 때
반대로 "일단 저장해두자"며 망가진 상태를 찍어두면 나중에 돌아갈 곳이 안 됩니다. 돌아가고 싶은 상태일 때 찍는다고 기억하세요.
그리고 메모를 남길 때는 "수정"이나 "업데이트" 같은 말 대신 무엇이 됐는지 적으세요. "메모 저장 기능 완성"처럼요. 일주일 뒤의 나는 "수정3"이 무엇인지 절대 기억하지 못합니다.
AI에게 도움을 요청해도 된다
명령어를 외울 필요가 없습니다. 이렇게 물어보면 됩니다.
지금 상태를 저장해두고 싶어. 어떻게 하면 되는지 순서대로 알려줘. 나는 명령어를 잘 몰라.
아까 저장해둔 시점으로 돌아가고 싶어. 지금 바꾼 건 다 버려도 돼.
두 번째를 요청할 때는 "지금 바꾼 건 버려도 된다"는 말을 꼭 붙이세요. 이 말이 없으면 AI가 조심스럽게 다른 방법을 안내하다 더 복잡해집니다.
코드를 인터넷에 올리면 남이 볼 수 있나요?
설정에 따라 다릅니다. 비공개로 만들면 나만 볼 수 있습니다. 다만 어느 쪽이든 비밀번호나 서비스 키를 코드 안에 적어두지 마세요. 비공개라도 나중에 공개로 바꾸는 순간 그대로 노출됩니다. 이런 값은 별도 파일에 두고 그 파일은 올리지 않는 것이 기본입니다.
혼자 하는데도 필요한가요?
혼자일수록 더 필요합니다. 여럿이 하면 서로 물어보기라도 하는데, 혼자면 "일주일 전의 나"가 무엇을 왜 바꿨는지 물어볼 데가 없습니다. 기록이 그 역할을 대신합니다.
지금부터 시작해도 되나요?
됩니다. 이미 만들던 프로젝트가 있어도 지금 상태부터 기록을 시작하면 됩니다. 과거를 소급해서 만들 수는 없지만, 앞으로의 모든 시점은 남습니다. 늦게 시작할수록 손해가 쌓이므로 오늘 하는 게 이득입니다.
되돌릴 수 있으면 더 많이 시도하게 된다
이 하나만 갖춰도 만드는 속도가 달라집니다. 실패해도 잃는 게 없다는 걸 알면 훨씬 자유롭게 시도하게 되고, 결국 그 시도 횟수가 결과를 만듭니다.
돌아갈 지점을 만들어두고 작업하다 완성했다면 Vibeollio에 프로젝트 등록해서 공개해보세요. 만든 과정 자체가 다른 사람에게 참고가 되는 경우도 많습니다.
