TIL : 230104

JINSEON YE·2023년 1월 4일

TIL

목록 보기
48/88

git push 오류 해결

문제 상황 : push를 하는 과정에서 ->

Updates were rejected because the remote contains work that you do not have locally.

라는 오류가 발생함

원인 : github repository를 생성할 때 readme.md를 생성했기 때문에 발생하는 오류라고 함.

해결 방법 : pull을 해주면 됨. git pull origin master

2번째 상황 :

hint: Updates were rejected because the tip of your current branch is behind

hint: its remote counterpart. Integrate the remote changes (e.g.

hint: 'git pull ...') before pushing again.

hint: See the 'Note about fast-forwards' in 'git push --help' for details.

라는 오류 발생.

원인 : 데이터 유실 등 문제가 있을 수 있는 부분이 있어 git에서 처리 되지 않도록 에러를 띄우는 것

해결 : 임시방편으로 "+"를 이용. git push -u origin +master 인데, 나는 내 브랜치만 바꾸면 돼서 git push -u origin +브랜치명 을 입력해줌. -> push 완료

"+"는 강제푸시하는 커맨드이고 기존 커밋이 다 날아간다.
(git push -u origin는 업스트림 관련된 명령어인데, "+" 가 어떤 기능이기에 강제푸시처럼 사용되는지 아직 잘 모르겠다.
git push -u origin 업스트림)

<수정 01/06> 강제푸시는 -f, --force 이다.
나는 내 브랜치만 강제푸시하고 싶었기 때문에 +master에서 master 자리에 브랜치명을 넣어서 시도해봤다.
정말정말 다행히 내 브랜치만 건들여졌고 다른 브랜치, master는 무사했다...

git push 오류 해결 참고

git push 오류 해결 참고2

git push 오류 해결 참고3

히스토리 들어가서 예전파일로 돌리기도 하고
2시간 가까이 reset, revert 오만가지 다 찾아봤는데, 함부로 실행 안 하길 잘 했고 너무 깊이 들어간다 싶으면 처음부터 다시 해결해보고 다시 돌아가서 해결해보고 하다가 해결책을 찾았다.

<배운내용>

DAO(Data Access Object) 란?

repository package

실제로 DB에 접근하는 객체이다.
Persistence Layer(DB에 data를 CRUD하는 계층)이다.
Service와 DB를 연결하는 고리의 역할을 한다.
SQL를 사용(개발자가 직접 코딩)하여 DB에 접근한 후 적절한 CRUD API를 제공한다.
JPA 대부분의 기본적인 CRUD method를 제공하고 있다.
extends JpaRepository<User, Long>

https://gmlwjd9405.github.io/2018/12/25/difference-dao-dto-entity.html

보드에 id로 되어있으니까
보드에서 파인드바이 코맨
회원탈퇴요청오면 검증하고
보드랑 커맨트에 유저아이디가 있어서
유저서비스에 탈퇴메소드 만들어서
요청이 오면 게시글이랑 댓글은 삭제하고 유저리포지토리에서

profile
백엔드 개발자

0개의 댓글