services: localdb: container_name: tester # 컨테이너 이름 image: mysql:8.0 # MySQL 8.0 이미지를 사용할 것 ports: - 3309:3306 # 외부(로컬) 3309번 포트 → 컨테이너 내부 3306 포트로 연결 environment: # 환경변수 설정 MYSQL_ROOT_PASSWORD: TestdbRoot MYSQL_DATABASE: testdb command: - --character-set-server=utf8mb4 - --collation-server=utf8mb4_unicode_ci - --log_bin_trust_function_creators=1..
기타

📌 MergeMerge, 브랜치를 합치는 것이다. git branch를 다른 branch로 합치는 과정을 merge라고 한다. merge의 기본 단위는 branch이다.💡 Merge의 종류Fast-Forward merge시간의 흐름대로 커밋된 내역을 병합한다.Conflict 발생이 없고 100% Auto-merge된다. merge후 모든 commit이 복제 된다. 따라서 merge시에 commit을 따로 생성하지 않고 현재 위치한 브랜치의 최신 커밋이 병합할 브랜치의 최신 커밋으로 이동하며 병합된다.3-Way merge두 개 이상의 브랜치로 파생된 커밋을 병합한다. 충돌(conflict) 가능성 있고병합 메시지(merge commit) 존재한다. 3-way merge를 남발하게 되면 commit ..
📌 NVM Node Version Management로 노드 버전을 관리해 주는 툴이다. 프로젝트 마다 다른 node 버전을 사용할 가능성이 높다. 그럴 때 마다 쉽게 node버전을 바꿀 수 있게 도와준다. 📌 .nvmrc프로젝트의 루트에 .nvmrc 파일을 만든다. echo "22" > .nvmrc 이런식으로 터미널을 통해 만들던가, GUI에서 파일을 만들어 놔도 된다. 파일안에는 해당 프로젝트의 노드 버전을 적어 두면 된다. 22버전 Node를 사용할 경우 위와 같이 22 라고 써놓기만 하면 된다. .nvmrc에 있는 node 버전 적용하기 nvm use.nvmrc 에 버전을 써놓으면 위의 명령어만을 이용해 버전이 자동으로 바뀌게 된다.

📌 git stash커밋하기 애매할 경우 옆에 잠깐 치워놓는 작업이다.작업 도중 긴급하게 다른 수정을 해야하는데, 커밋을 하면 안되는 상황(현재 작업중인 내용을 커밋하기 애매할 때)일 때 사용한다. 내가 원하는 branch에도 적용할 수 있다. 즉, 현재 변경 사항을 일시적으로 저장하는 기능이다. 현재 작업이 끝나지 않았는데 다른 작업을 해야할 경우 git stash를 활용하여 일시적으로 저장해 놓을 수 있다. 💡 stash 사용하기// 라벨을 지정해도 되고, 안해도 된다. git stashgit stash [save "label"]// 최신 방법 이라고 한다. git stash push -m "라벨명"stash는 스택으로 저장된다. git stash list를 통해 현재 일시적으로 저장된 것을 ..

둘다 '커밋'을 되돌린다는 공통점이 있다. 그렇지만 이 둘은 굉장히 큰 차이가 있다. 📌 Reset & Revert의 개념💡Reset특정 commit으로 되돌린다. 이전 흔적을 남기지 않고 커밋을 되돌린다.💡Revert커밋을 이전으로 되돌리긴 하지만, 커밋을 되돌린다? 라기 보단 새로운 커밋이 생기면서 상태를 되돌린다. 그래서 단점은 Revert는 흔적을 남기고 (자신이 실수 했다는?) 되돌리게 된다. 그래서 차이점이 뭔데? 둘다 이전으로 되돌린다가 공통점이지만, reset은 흔적을 남기지 않고 과거로 돌아가고, revert는 흔적을 남기고 원하는 시점으로 돌아간다. 그렇다면 왜 두개가 있고,,, 언제 뭘 사용해야 될까??Push 여부에 따라 다르다. , 그렇지만 항상 Revert를 사용하는게 더..

📌 Git이 관리하는 세 개의 공간Working Directory사용자의 작업 공간이다. 작업된 파일이나 코드가 저장되는 공간이다. 작업 공간에서 .git 폴더를 제외한 나머지 부분git이 워킹 디렉토리에서 파일을 추척하냐 아니냐에 따라 상태가 두가지로 나뉜다.Untracked 상태저장소 내에 처음 만들어지는 모든 파일은 untracked 상태로 시작한다.워킹디렉토리 안의 해당 상태는 git이 코드 변경 이력을 추적하지 않는다.Tracked 상태git이 코드 변경 이력을 추적하는 파일들이다. git add 명령어를 이용해 tracked 상태로 등록할 수 있다. 위의 사진처럼 tracked 상태가 된다면 stage 공간으로 이동한다.Staging Areagit add 명령어를 통해 tracked 상태로 ..

@IBOutlet weak var mainLabel: UILabel! 에서 오류가 난 것 오류가 난 이유는 1. 연결을 해지를 하지 않고 코드를 지운 경우 2. 연결된 코드의 변수를 마음대로 변경하는 경우 이러한 이유 때문에 연결을 꼭 해지한 후 코드를 지우거나 변수를 변경하려면 반드시연결을 해지한 뒤에 다시 변수를 만들어 오류를 없앨 수 있다. 연결을 해지하는 방법 1. 컨트롤을 누른 상태로 연결을 취소할 라벨을 클릭한다. 2. 아래의 Referencing Outlets에서 조그만한 엑스를 클릭하여 연결을 취소한다. 엑스를 눌러 연결을 취소한 뒤에는 코드를 삭제하거나, 다시 연결하여 변수명을 변경할 수 있다.