CRUD 백엔드와 프론트의 연결을 고려한 트위터 미니 프로젝트 실습을 진행했다.
강사님이 직접 풀이해주는 미니 프로젝트였으나, 역시나 타이핑 속도가 빨라 따라가기가 쉽지 않았다.
쉬는 시간마다 강사님의 레포를 보며 오류를 고쳤고, 월요병을 이겨내며 끝까지 따라갔다.
수업 후반부에는 디렉토리 구조를 나누어 리펙토링을 진행했는데 양이 꽤 많아 다 마치지 못한 채 수업이 마무리 되었다.
대부분의 Node.js 디렉토리 구조는 다음과 같다고 한다.

publc/

css/

js/

.html

routes/

userRoute.js

adminRoute.js

productRoute.js

index.js

controllers/

userController.js

adminController.js

productController.j

index.js

models/

userModel.js

adminModel.js

productModel.js

index.js

middleware/

index.js

app.js

집에서 커밋하려다가 처음 보는 이슈 발생


# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
#
# On branch main
# Your branch is up to date with 'origin/main'.
#
# Changes to be committed:
#	new file:   3.JS/6.Library/5.sweetalert/1.intro.html
#	new file:   3.JS/6.Library/5.sweetalert/2example.html
#	new file:   3.JS/6.Library/5.sweetalert/package-lock.json
#	new file:   3.JS/6.Library/5.sweetalert/package.json
#	new file:   3.JS/6.Library/5.sweetalert/server.js
#	new file:   3.JS/9.Project/5.tweet/app.js
#	new file:   3.JS/9.Project/5.tweet/init_database.sql
#	new file:   3.JS/9.Project/5.tweet/package-lock.json
#	new file:   3.JS/9.Project/5.tweet/package.json
#	new file:   3.JS/9.Project/5.tweet/public/css/style.css
#	new file:   3.JS/9.Project/5.tweet/public/index.html
#	new file:   3.JS/9.Project/5.tweet/public/js/common.js
#	new file:   3.JS/9.Project/5.tweet/public/js/index.js
#	new file:   3.JS/9.Project/5.tweet/public/js/login.js
#	new file:   3.JS/9.Project/5.tweet/public/js/tweet.js
#	new file:   3.JS/9.Project/5.tweet/public/login.html
#	new file:   3.JS/9.Project/5.tweet/public/profile.html
#	new file:   3.JS/9.Project/5.tweet/public/tweet.html
#	new file:   3.JS/9.Project/6.tweet tailwind/app.js
#	new file:   3.JS/9.Project/6.tweet tailwind/init_database.sql
#	new file:   3.JS/9.Project/6.tweet tailwind/package-lock.json
#	new file:   3.JS/9.Project/6.tweet tailwind/package.json
#	new file:   3.JS/9.Project/6.tweet tailwind/public/css/style.css
#	new file:   3.JS/9.Project/6.tweet tailwind/public/index.html
#	new file:   3.JS/9.Project/6.tweet tailwind/public/js/common.js
#	new file:   3.JS/9.Project/6.tweet tailwind/public/js/index.js
#	new file:   3.JS/9.Project/6.tweet tailwind/public/js/login.js
#	new file:   3.JS/9.Project/6.tweet tailwind/public/js/tweet.js
#	new file:   3.JS/9.Project/6.tweet tailwind/public/login.html
#	new file:   3.JS/9.Project/6.tweet tailwind/public/profile.html
#	new file:   3.JS/9.Project/6.tweet tailwind/public/tweet.html
#	new file:   3.JS/9.Project/7.tweet_refactoring/app.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/controllers/authController.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/controllers/index.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/controllers/profileController.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/controllers/tweetController.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/init_database.sql
#	new file:   3.JS/9.Project/7.tweet_refactoring/middlewares/authMiddleware.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/middlewares/index.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/models/db.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/models/index.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/models/likeModel.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/models/tweetModel.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/models/userModel.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/package-lock.json
#	new file:   3.JS/9.Project/7.tweet_refactoring/package.json
#	new file:   3.JS/9.Project/7.tweet_refactoring/public/css/style.css
#	new file:   3.JS/9.Project/7.tweet_refactoring/public/index.html
#	new file:   3.JS/9.Project/7.tweet_refactoring/public/js/common.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/public/js/index.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/public/js/login.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/public/js/tweet.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/public/login.html
#	new file:   3.JS/9.Project/7.tweet_refactoring/public/profile.html
#	new file:   3.JS/9.Project/7.tweet_refactoring/public/tweet.html
#	new file:   3.JS/9.Project/7.tweet_refactoring/routes/authRoutes.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/routes/index.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/routes/profileRoutes.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/routes/tweetRoutes.js
#

vs code에서 커밋 메시지를 입력하지 않고 커밋 버튼(+)을 눌렀더니 이와 같은 COMMIT_EDITMSG 파일이 나왔다.

4/28(월) 수업
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
#
# On branch main
# Your branch is up to date with 'origin/main'.
#
# Changes to be committed:
#	new file:   3.JS/6.Library/5.sweetalert/1.intro.html
#	new file:   3.JS/6.Library/5.sweetalert/2example.html
#	new file:   3.JS/6.Library/5.sweetalert/package-lock.json
#	new file:   3.JS/6.Library/5.sweetalert/package.json
#	new file:   3.JS/6.Library/5.sweetalert/server.js
#	new file:   3.JS/9.Project/5.tweet/app.js
#	new file:   3.JS/9.Project/5.tweet/init_database.sql
#	new file:   3.JS/9.Project/5.tweet/package-lock.json
#	new file:   3.JS/9.Project/5.tweet/package.json
#	new file:   3.JS/9.Project/5.tweet/public/css/style.css
#	new file:   3.JS/9.Project/5.tweet/public/index.html
#	new file:   3.JS/9.Project/5.tweet/public/js/common.js
#	new file:   3.JS/9.Project/5.tweet/public/js/index.js
#	new file:   3.JS/9.Project/5.tweet/public/js/login.js
#	new file:   3.JS/9.Project/5.tweet/public/js/tweet.js
#	new file:   3.JS/9.Project/5.tweet/public/login.html
#	new file:   3.JS/9.Project/5.tweet/public/profile.html
#	new file:   3.JS/9.Project/5.tweet/public/tweet.html
#	new file:   3.JS/9.Project/6.tweet tailwind/app.js
#	new file:   3.JS/9.Project/6.tweet tailwind/init_database.sql
#	new file:   3.JS/9.Project/6.tweet tailwind/package-lock.json
#	new file:   3.JS/9.Project/6.tweet tailwind/package.json
#	new file:   3.JS/9.Project/6.tweet tailwind/public/css/style.css
#	new file:   3.JS/9.Project/6.tweet tailwind/public/index.html
#	new file:   3.JS/9.Project/6.tweet tailwind/public/js/common.js
#	new file:   3.JS/9.Project/6.tweet tailwind/public/js/index.js
#	new file:   3.JS/9.Project/6.tweet tailwind/public/js/login.js
#	new file:   3.JS/9.Project/6.tweet tailwind/public/js/tweet.js
#	new file:   3.JS/9.Project/6.tweet tailwind/public/login.html
#	new file:   3.JS/9.Project/6.tweet tailwind/public/profile.html
#	new file:   3.JS/9.Project/6.tweet tailwind/public/tweet.html
#	new file:   3.JS/9.Project/7.tweet_refactoring/app.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/controllers/authController.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/controllers/index.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/controllers/profileController.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/controllers/tweetController.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/init_database.sql
#	new file:   3.JS/9.Project/7.tweet_refactoring/middlewares/authMiddleware.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/middlewares/index.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/models/db.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/models/index.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/models/likeModel.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/models/tweetModel.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/models/userModel.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/package-lock.json
#	new file:   3.JS/9.Project/7.tweet_refactoring/package.json
#	new file:   3.JS/9.Project/7.tweet_refactoring/public/css/style.css
#	new file:   3.JS/9.Project/7.tweet_refactoring/public/index.html
#	new file:   3.JS/9.Project/7.tweet_refactoring/public/js/common.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/public/js/index.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/public/js/login.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/public/js/tweet.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/public/login.html
#	new file:   3.JS/9.Project/7.tweet_refactoring/public/profile.html
#	new file:   3.JS/9.Project/7.tweet_refactoring/public/tweet.html
#	new file:   3.JS/9.Project/7.tweet_refactoring/routes/authRoutes.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/routes/index.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/routes/profileRoutes.js
#	new file:   3.JS/9.Project/7.tweet_refactoring/routes/tweetRoutes.js
#

GPT한테 물어본 결과 그냥 이렇게 커밋 메시지 쓰고 저장한 다음에 창을 닫으면 되었다.
다행히도 별탈 없이 변경 내용 동기화 버튼이 나왔고, 무사히 푸시했다.

갑자기 처음 보는 창이 떠서 당황했는데 별거 아닌 이슈였다!

profile
개발자 지망생. 일단 하고보자

0개의 댓글