What I Learned

호눅스의 수업

Git

Git이란 분산 버전 관리 시스템이다. Linus Torvalds가 리눅스 버전관리를 위해 만들었고 협업과 버전관리를 위해 쓰이고있다.

깃에서는 커밋이 제일 중요한데 여기서 커밋은 내 작업 디렉토리의 스냅샷이다. 게임으로 치면 체크포인트와 같은 역할을 하며 따라서 언제든 커밋을 한 시점으로 되돌아갈 수 있다. 커밋은 변경사항을 저장하는 것이 아니라 매번 파일 전체를 저장한다.

개념

브랜치는 기능 기준으로 만들 것.


Issue

  1. 미션1에 나와있는대로 테스트케이스를 만들었지만 assertj가 임포트되지 않아 애를 먹었다. 구글링을 해보니 뭔 디펜던시를 어떻게 하라는데 무슨 소린지 몰라 그룹원에게 도움을 청했고 제인이 링크를 보내줘서 해결할 수 있었다. 프로젝트를 만들 때 gradle이나 maven을 설정해야하는 것 같았다. 스프링을 써본 적이 없어 이런 부분이 생소했다. 처음엔 build.gradle 파일을 임의로 만들어서 쓰면 되는 줄 알았고 몇번이고 프로젝트를 새로 만들고서야 제대로 생성할 수 있었다. build.gradle 파일의 dependencies 을 제인이 보내준 링크를 참고해 고치고 나서 assertj가 무사히 임포트되는 걸 확인했다.
  2. 1의 문제를 해결하고 테스트를 돌리니 junit.jupiter.api does not exist 오류 메세지가 떴다. 구글링을 해보니 인텔리제이의 설정이 잘못되어 있었다는 걸 알았다. gradle의 설정에 build and run using과 run tests using 옵션을 모두 IntelliJ IDEA로 바꿔주니 해결되었다.