분류 전체보기191 [Git] rebase + squash로 커밋 합치기 PR (MR) 요청하기 전에 커밋을 깔끔하게 만드는 습관을 갖자 분기한 브랜치에서 작업하다가 PR (혹은 MR)을 날리려면 지저분한 커밋이력이 문제다. 아래는 main 브랜치에서 분기해서 feat/login 브랜치에서 3개의 커밋을 만들고 merge 하기 직전의 모습이다. 리뷰어에게 보기도 편하고, 브랜치 이력도 깔끔히 관리하기 위해 3개의 커밋을 하나로 합쳐서 merge 요청을 보낼 수 있다. 1. git rebase로 HEAD부터 n개의 커밋을 합치기 $ git rebase -i HEAD~3 pick 8a338ed 레이아웃 작업 1차 완료 pick 07fef02 레이아웃 작업 완료 pick ab0dbba 테스트 작성 완료 # Rebase 7457bdf..ab0dbba onto 7457bdf (3 co.. 2024. 1. 24. [GitHub] Personal access tokens으로 private repository 내려받기 remote: Repository not found. 문제 $ git clone Cloning into ... remote: Repository not found. fatal: repository not found GitHub private repository를 내려받으려는 중 위 처럼 repository url을 인식하지 못하는 오류 발생. 원인 해당 Repo에 접근할 수 있는 Git 계정이 OS에 설정된 Git 계정과 달라서 발생하는 문제로 예상. 로컬에서 여러 GitHub 계정을 사용할 것이기 때문에 글로벌 설정을 해주어도 매번 바꿔주어야함 해결 GitHub에서 Personal access tokens (classic)을 발급받아 아래처럼 url에 붙여서 사용 $ git clone @ Cloning into ... remote: Enumerating .. 2024. 1. 18. [Database] 데이터 타입 비교 : char vs varchar 목차 SQL 표준에서의 char, varchar 예시 1. Oracle 예시 2. MySQL SQL 표준에서의 char, varchar SQL 표준에서 정의한 built-in type은 다음과 같다. char(n) : character, 고정길이 형태 문자열, n (bytes)은 사용자가 정의 varchar(n) : character varying, 가변길이 형태 문자열, 사용자는 최대길이 n (bytes)을 정의 nvarchar (n) : 다국어 데이터를 저장할 수 있는 varchar int samllint numeric(p, d) real, double precision folat(n) char와 varchar에 대해 간단히 비교해보려 한다. 둘 다 문자열 데이터 타입이고, null을 삽입할 수 있다.. 2024. 1. 17. [Database] Oracle Database Index (19c 기준) 목차 오라클의 인덱스 오라클에서 지원하는 데이터베이스 인덱스 B-Tree 인덱스 Bitmap 인덱스 Funtion-Based 인덱스 Application Domain 인덱스 Index-Organized Tables 오라클의 인덱스 오라클 인덱스는 스키마 object로서 원천 데이터로부터 논리(물리)적으로 분리되어 있다. 그러므로 인덱스를 Drop 하면 여전히 데이터에는 액세스가 가능하다. (그러나 느리겠지) 인덱스는 빠르게 single row 로 찾아갈 수 있는 길이다. 오로지 실행 속도에 영향을 준다. 찾으려는 데이터 값이 인덱싱 되어있다면 인덱스를 통해 해당 값이 포함된 row로 곧장 갈 수 있다. 인덱스는 테이블의 1개 이상의 컬럼에 생성할 수 있다. 인덱스는 disk I/O를 줄여주는 여러 대안 .. 2024. 1. 8. [algorithm] 정렬 1. 병합 정렬 목차 병합정렬 하향식 병합 정렬 (top-down) 상향식 병합 정렬 (bottom-up) 병합 정렬은 점근적으로 볼 때 최적의 비교 기반 정렬 알고리즘이다 병합정렬 병합 (merge)은 정렬 대상을 2개의 배열로 쪼갠 다음, 각각 정렬시킨 다음 큰 정렬된 배열로 다시 합치는 것을 말한다. 이때 배열을 쪼개어 정렬한 뒤 합치는 작업을 재귀적으로 수행한다면, 최종적으로 배열이 정렬된다는 것이다. 크기가 N인 배열을 정렬하는데 NlogN이 소요된다. 재귀적으로 구현한다는 것은 분할정복 패러다임 (문제를 잘게 쪼개어 각 부분을 해결한뒤 다시 전체 문제를 해결)을 사용한다는 것이다. 아래에서 살펴보겠지만, 분할정복은 다시 하향식 (top-down)으로 구현하는 방법과, 상향식 (bottom-up)으로 구현방법이.. 2024. 1. 7. [Java] JDK 21 Virtual Threads 톺아보기 목차 OS 스레드와 Java Platform Thread Java Virtual Thread Virtual Thread 사용해 보기 Virtual Thread 효율적으로 사용하기 Java 21에 새롭게 추가된 Virtual Thread에 대해 알아본다. 먼저, 가상 스레드를 일목요연하게 정리해 주신 카카오 안정수(James.star)님께 감사드린다. 아래 링크를 통해 영상을 볼 수 있다. https://youtu.be/vQP6Rs-ywlQ 추가로 Oracle에서 제공한 Virtual Thread 문서를 참고하여 가상 스레드를 정리해 보았다. 예시코드는 모두 아래 깃헙에서 볼 수 있다. https://github.com/gihyeon6394/hello-java-virtualthread GitHub - gi.. 2024. 1. 4. 이전 1 ··· 4 5 6 7 8 9 10 ··· 32 다음