전체 글

공부한 내용을 정리합니다
Programming/Git

삭제한 커밋 이력이 잔디에 남아있을 때

https://github.com/orgs/community/discussions/54436 Commits deleted but showing in activity and calendar contributions · community · Discussion #54436 Select Topic Area Question Body Hi there! I've deleted the last 2 commits from a repo using git reset --hard and updated it with force push, but the commits are still showing in the calendar contri... github.com 이 디스커션을 보고 지원팀에 문의해야하는구나.. 하고 문의를 넣..

Software Engineering/Study Notes

클라우드 서비스 SaaS, PaaS, IaaS

IaaS(Infrastructure as a Service) 최초의 aaS(as a Service) 솔루션 Amazon Web Service, Google Cloud, IBM Cloud, Microsoft Azure 등 활용사례 재해 복구 솔루션 (여러 위치에 이중 서버를 둘 필요 없이 다양한 지역에 있는 클라우드 제공업체의 인프라스트럭처에 재해 복구 솔루션 구축 온프레미스보다 더 빠르게 소프트웨어 개발 및 테스트 인프라스트럭처 구축 가능 전자상거래 : 급격한 트래픽 증가가 빈번한 온라인 유통업체에 적합한 선택. 확장성이 있다. 스타트업 : 인프라스트럭처에 초기 자본을 투자할 부담 없이 이점 활용 가능 PaaS(Platform as a Service) 애플리케이션 개발, 실행, 관리를 위한 클라우드 기반..

Review

한 권으로 읽는 컴퓨터 구조와 프로그래밍

부제 : 더 나은 소프트웨어 개발을 위한 하드웨어, 자료구조, 필수 알고리즘 등 프로그래머의 비밀 노트 정보처리기사 시험 준비를 하며 알게 된 개념들이 아직 파편화되어 여기저기 흩어져있는 느낌이라, 컴퓨터 공학에 대해 한권으로 쭉 정리되어있는 책을 찾아보다가 도서관에서 발견해 구매하게된 책이다. 일단 '한 권으로 읽는' 만큼 책의 두께가 굉장히 두껍고, 목차도 생각보다 다양하게 구성되어있었다. 비전공자도 재미있게 읽을 수 있다는 소개처럼 각 내용의 깊이를 추구하려면 개별 서적을 참고해야할 듯 하지만, 애초에 이 책을 고르게 된 계기가 기본 개념을 다시 한 번 정리해보자는 취지였기 때문에 크게 문제는 없었다. 그렇다고 혼공 시리즈 정도의 친근한 서술도 아니어서 정처기 다음 루트로 딱 적절했다. 이제 요 책..

Programming/Git

Git 충돌 해결 Merge Conflict

충돌 발생 상황 여러명이 동시에 같은 브랜치에서 같은 파일을 수정하는 경우 충돌이 발생할 수 있습니다. 이때 Git은 어떤 변경사항을 적용해야 하는지 결정하지 못하고, 충돌이 발생한 파일을 마크업으로 표시합니다. 충돌 해결 단계 1. 충돌 발생 파일 열기 충돌이 발생한 파일을 텍스트 편집기로 열면 아래와 같이 > 같은 기호들로 마크업된 부분이 표시됩니다. (기존 파일 내용) > 병합 시도하는 브랜치명 2. 충돌 해결 충돌을 해결하기 위해서는 마크업된 부분 중에서 어떤 변경사항을 유지하고 어떤 변경사항을 삭제할지 결정해야 합니다. HEAD 브랜치의 변경사항을 유지하고 병합 시도하는 브랜치의 변경사항을 삭제하거나, 두 변경사항을 조합하여 하나의 수정본을 만들 수 있습니다. HEAD 브랜치의 변경사항을 유지하..

Programming/Back-end

Node.js / 자체 로컬 서버에서 서버를 시작하는 방법

Node.js를 사용하여 로컬 환경에서 웹 서버를 시작하고, 프로젝트를 빌드하는 방법. 1. Node.js 설치 Node.js가 설치되어있어야 한다. lts 추천. 2. 프로젝트 폴더 생성 후 진입 프로젝트 폴더에 들어가서 터미널 또는 명령 프롬프트를 연다. 3. 패키지 초기화 프로젝트 폴더에서 다음 명령어를 실행하여 package.json 파일을 생성한다. npm init 이후 package.json 설정을 완료한다 4. Express.js와 기타 패키지 설치 Express.js를 비롯한 필요한 패키지를 설치한다. npm install express 5. 서버와 프로젝트 빌드 스크립트 추가 프로젝트 폴더에 server.js 파일을 생성하고, 다음과 같이 코드를 작성한다. const express = r..

Programming/Back-end

Yarn

동시에 여러 개의 패키지들을 다운로드. 처음에 한 번 세팅을 해두면 시간적인 측면에서 편리하게 사용 가능. install & setting npm을 통해 설치. npm install -g yarn -g = global yarn이 설치된 컴퓨터 어디에서든 yarn을 사용 가능하다는 뜻. 설치 여부 확인방법은 yarn --version. 따로 yarn 폴더를 생성하여 필요한 최신 라이브러리를 다운로드하여 프로젝트 폴더로 이동하는 방법 추천. yarn을 Install 할 때 여러 개의 파일이 생성되는데, 웹퍼블리싱에는 필요하지 않은 파일이기 때문. 따라서 따로 yarn 폴더를 생성하여 아래와 같은 과정을 마쳐두었다. yarn 실행할 곳으로 이동 cd 경로 -> 생성 yarn 빈 폴더에 node-modules폴..

Programming/Git

Git 백업 제거 : Cannot create a new backup

Cannot create a new backup. A previous backup already exists in refs/original/ Force overwriting the backup with -f 이 에러 메시지는 Git이 이미 백업을 생성한 상태에서 새로운 백업을 만들려 할 때 나타나는 에러 메시지입니다. 따라서 기존 백업을 삭제할 필요가 있습니다. Git 백업 삭제하기 백업을 제거하고 싶은 경우의 해결법은 아래와 같습니다. git update-ref -d refs/original/refs/heads/{백업을 삭제하려는 branch 명} 백업은 각 브랜치마다 별도로 생성되기 때문에 삭제하려는 브랜치를 명확하게 지정해야 합니다. 예를 들어, main 브랜치의 백업을 삭제하기 위한 명령어는 아래..

Programming/Git

Git Log 명령어 단축키

Git을 사용하면 코드 변경 내역을 확인하기 위해 git log 명령어를 사용할 때가 많은데, 이 상태에서 사용할 수 있는 단축키를 정리했습니다. 1. "q" 키 - Git Log 종료 Git Log 출력 화면에서 "q" 키를 누르면 Git Log 명령어를 종료할 수 있습니다. "q" 키를 누르면 터미널 또는 Git Log 출력창이 닫히고 다른 작업을 계속할 수 있습니다. 2. 화살표 키 (위/아래) - 로그 스크롤 로그 목록이 길 경우, 화살표 키(위/아래)를 사용하여 로그를 스크롤할 수 있습니다. 위 화살표 키를 누르면 이전 커밋 목록으로 이동하고, 아래 화살표 키를 누르면 다음 커밋 목록으로 이동합니다. 3. 스페이스바 - 다음 페이지로 이동 로그 목록이 길 경우, 스페이스바를 눌러 다음 페이지의 ..

Programming/C

C언어 / 포인터 변수 선언 int *a = &b 인 경우

포인터 변수 선언 복습 더보기 포인터 변수 선언 int *a; a를 포인터변수라고 선언 (a는 임의의 주소값을 가지고 있어!) 이후 a가 나오면 a공간의 값에~ 라고 읽으면 된다. *a = 10; a주소가 갖고있는 값은 10이다! printf("%d", a); //a주소값 a주소가 출력된다 (임의의 주소값) printf("%d", *a); //a주소가 갖고있는 값 a공간의 값이니 10이 출력된다 그렇다면 int *a = &b 는? 처음에 딱 한 번, 즉 초기화 할 때만 사용할 수 있는 형태. 이후부터는 아래와 같이 *a를 사용할 수 없고 a라고 해주어야 한다. a = &b; 초기화 이후에도 해당 형태로 사용한다면? int *a; *a = &b; c위치의 값을 b의 주소값으로 바꿔버리게 된다.