HANUL's BLOG

👋@HANUL
Slow and steady wins the race

GitHub

git commit 내역 수정하기

August 07, 2021

커밋 메시지 수정하기 1. 가장 최근의 커밋 수정 옵션을 사용하면 가장 마지막에 commit 한 내용을 보여준다. 수정 완료한 후 저장하고 나오면 된다. 2. 더 오래전의 커밋 수정 && 한 번에 여러 커밋 수정 먼저 어떤 커밋을 수정할 것인지 확인해야 한다. 따라서 명령어를 통해서 커밋 내역을 확인한다. 만약 위에서 5번째 커밋 중 수정하고 싶…

Git non-fast-forward 에러 해결하는 방법

July 25, 2021

상황 원격 저장소에 REAME 파일을 생성 로컬에서 해당 원격 저장소를 add 한 뒤(git remote add origin ‘url’), 작업 진행 로컬에서 작업 완료 원격 저장소에 push 할 때 아래와 같은 에러 발생 원인 원격 저장소에서 수행 작업과 로컬에서 수행한 작업간의 공통 분모가 없는 상태이기 때문에 발생 해결 방법 1. 관련 없었던 두 저…

정렬 알고리즘 정리

July 10, 2021

목표 정렬 알고리즘을 이해한다. 정렬 알고리즘의 시간 복잡도와 공간 복잡도를 이해한다. 정렬 알고리즘을 코드로 구현할 수 있다. 1. 버블 정렬(Bubble Sort) 매번 연속된 두 인덱스를 비교해서 정렬하는 방법이다. 오름차순으로 정렬할 경우, 비교할 때마다 큰 값이 뒤로 이동하게 되고 1회전을 수행한 뒤에는 가장 큰 값이 맨 뒤에 저장되게 된다.…

젠킨스(jenkins)에 대해서 알아보자

July 05, 2021

젠킨스(Jenkins)란? 젠킨스는 소프트웨어 개발 시 지속적인 통합 서비스를 제공하는 CI툴이다. 빌드, 테스트, 배포 등 모든 것을 자동화 해주는 서버이다. 젠킨스 사용하게 된 이유 과거 소프트웨어 개발은 제조업에 개발 흐름을 따라 WATERFALL, 폭포수 모델을 차용했다. 폭포수 모델은 요구사항 분석-> 시스템 설계 -> 구현 -> 테스트 -> 배…

ngrok란

July 04, 2021

ngrok란? 방화벽 넘어서 외부에서 로컬에 접속 가능하게 하는 터널 프로그램이라고 할 수 있다. 설치 사용법 로컬 서버 포트가 9090이라고 가정하면 아래 명령을 실행하면 외부에서 접근 가능하다. 이렇게 포워딩 URL을 사용하게 되면 외부에서도 로컬 개발 환경에 접근이 가능해진다. 그런데 Session Expires 의 시간이 만료가 되면 다시 ngr…

도커(Docker)란

July 02, 2021

도커란? 도커는 컨테이너 기반의 오픈소스 가상화 플랫폼이다. 컨테이너란 프로그램(소프트웨어)을 담는 격리된 공간을 의미한다. 이 각각의 컨테이너에는 ubuntu, centos, java, python, mysql 등이 담기게 된다. 그리고 각각의 컨테이너는 격리된 공간이기 때문에 서로간에 영향을 끼치지 않는다. 도커 등장 배경 도커 사용 전에는 웹서버를 …

DevOps와 CI CD 이해하기

June 30, 2021

DevOps란? DevOps란 개발(Development) + 운영(Operations) 개발 조직과 운영 조직 사이의 소통, 협업, 융합을 강화하는 개발 환경이나 문화를 말한다. 왜 DevOps가 생기게 되었나? 소프트웨어는 개발부터 고객에게 배포될 때까지 개발, 테스트, 인프라 등 다양한 과정을 거치게 된다. 다양한 과정을 거치는 만큼 회사가 조금만…

클라우드란 & AWS EC2 웹서버 구축하기

June 30, 2021

클라우드(Cloud)란 클라우드란 인터넷이다. 클라우드 서비스(Cloud Service)란? 클라우드, 즉 인터넷을 이용해서 제공되는 서비스를 말한다. 에버노트, 노션, SNS, 이메일, 깃 레파지토리 등 이렇게 인터넷을 이용해서 서비스를 제공하는 것을 또는 라고 한다. 클라우드 컴퓨팅(Cloud Computing) 컴퓨팅 리소스를 제공하는 클라우드 서…

String, StringBuilder, StringBuffer 비교하기

June 09, 2021

알고리즘 문제 풀이 중 메모리 초과를 경험했다. 원인은 문자열(String)의 어떠한 특성 떄문이었고, StringBuilder로 변경하여 메모리 초과를 해결할 수 있었다. String, StringBuilder, StringBuffer 각각의 특성을 이해하고 어떤점이 다른지 보자. String은 불변(immutable)하다 한 번 생성되면 변경될 수 …

HahshMap 값(Value) 기준으로 정렬하기

June 04, 2021