Git & GitHub

GitHub Action으로 Google App Engine 배포 자동화하기
미니 프로젝트를 다루다가 Google App Engine으로 배포하고, GitHub Action으로 CI/CD 를 구현하고 싶어서 GitHub Action에 대해서 알아보게 되었다. 근데 참고하는 글들이 예전 버전으로 되어있어서 업데이트한 버전으로 다시 알아두려고 정리해보았다.🤔 Google App Engine에 배포하는 과정도 애먹었었는데 이 과정은 다음 글에서 다시 정리해두어야 할 것 같다. 이번 글에서는 Google App Engine에는 배포되었다는 전제로 GitHub Action workflow 에 대해서만 다룰 예정이다. GitHub Actions? GitHub에서 제공하는 workflow 자동화 툴로 빌드, 테스트, 배포 등의 CI/CD를 해줄 수 있도록 도와주는 기능이다. GitHub Ac..

Github 프로젝트 페이지 배포하기
Github 저장소에 올려둔 프로젝트 파일을 배포하는 방법을 알아보자. 1. gh-pages 패키지 설치 먼저 프로젝트에 gh-pages 패키지를 설치한다. npm install gh-pages --save-dev && yarn add gh-pages 2. package.json 수정 설치가 완료되면 프로젝트 내 package.json 파일을 열어 "homepage" 주소를 추가한다. .... "development": [ "last 1 chrome version", "last 1 firefox version", "last 1 safari version" ] }, "devDependencies": { "gh-pages": "^4.0.0" }, "homepage": "http://사용자이름.github.i..

README 관리 팁
1. 구현 기능 목록화해서 정리하기 2. 설치 및 실행법 명시하기 3. option / 프로젝트 구조 설명 추가 기능이 있다면 작성하기 프로젝트의 구조가 어떤 식으로 이루어졌는지? 4. 배포 주소 / 기능별 영상 읽는(보는) 사람을 고려하여 과제를 직접 배포하여 주소를 README에 걸어두거나, 작동하는 모습을 기능별로 영상화해서 걸어두기. (영상/움짤을 삽입하면 좋을듯) 모듈을 설치할 필요 없이 배포 링크와 내부 코드만 보고 확인할 수 있게! 5. 코드 설명, 과제 후기 적지 않기 개인 블로그에 적고 링크를 걸어두자. 장황해지면 읽지 않는다. + commit 관리 Commit 한 번에 끝내지 말고 세부 내용도 함께 적는다. 진행 과정 보이게 4~10개 적기. 전략적으로 시간차를 두고 내가 이 프로젝트에..

브랜치 나누기/합치기
브랜치에 커밋 푸시 git push origin master 브랜치 생성 git branch 브랜치이름 브랜치 이동 git checkout 브랜치이름 브랜치 합치기 git merge 브랜치이름 Q. 여러 줄로 커밋을 쌓는 이유? 한 줄에서 작업하면 충돌이 날 수 있고, 똑같은 코드를 동시에 고칠 가능성이 있기 때문이다. 브랜치에 커밋 푸시 git push origin master 기본으로 만들어져 있는 master 브랜치에 커밋을 푸시하라는 의미이다. *HEAD: 지금 작업중인 로컬 브랜치를 가리킴. 브랜치 만들기 (나누기) git branch cat cat 브랜치를 현재 시점에 만들어라는 의미이다. 한 시점에 2개의 브랜치가 생성된다. (기존의 master + cat 브랜치) [실습] 브랜치 생성 [b..
![[GUI] Sourcetree](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FclRG8u%2FbtrpZ9ZnxUI%2Fl3arWqiEYeFykrvJORz9kk%2Fimg.png)
[GUI] Sourcetree
SourceTree 설치 GUI는 Git 개념을 그래프로 가시적으로 볼 수 있어 편리하다. 소스트리는 버튼 클릭으로 Git 명령을 실행할 수 있는 도구이다. 어떤 계정을 사용할 것인지 물어봄 ▶ Git 계정 없으면 Pass SSH 키 불러오기 여부 ▶ 아니오 로컬 저장소 추가하기 설치한 소스트리에 내 컴퓨터에서 이미 만든 로컬 저장소 추가하기 파일 업로드하기 로컬 저장소의 파일을 원격 저장소로 업로드 할 때에는 add, commit, push 의 과정을 거친다. 파일 스테이지에 올리기 (add) 변경된 파일이 존재할 때 위와 같이 뜨는데, 커밋을 누른 뒤, add를 하기를 원하는 파일을 옆에 + 버튼을 눌러 스테이지에 올려준다. 파일 변경사항 확인 커밋 메시지 작성 (Commit) *아이디와 계정이 본인..

Add와 Commit의 개념 이해
Git add : 변경한 파일 중 올리길 원하는 것만 선택 Git commit : 선택한 파일들을 한 덩어리로 만들고 설명을 덧붙임 변경사항의 모음(X) 하나의 최종 코드 모음(O) 기존 커밋과 비교해서 변경된 파일이 아니면 '변경되지 않았다'고만 저장해서 용량이 무겁지 않다. (변경된 파일만 새로 저장) 더보기 SVN vs. GIT 차이점 SVN은 바로 이전 커밋과의 변경사항만 저장한다. 커밋 당 용량은 더 가볍지만 한 버전을 보려면 맨 처음 커밋부터 계산해야 하기 때문에 속도가 느리다. Git은 바로 이전 커밋반 보면 되기 때문에 속도가 빠르다. 파일이 위치하는 영역 작업 디렉토리 : 현재 작업하고 있는 우리 컴퓨터 (Working directory) 스테이징 영역(add) : 파일을 전달하기 위해 ..

GitHub 사용법
로컬 저장소 / 원격 저장소 내 컴퓨터의 로컬 저장소에서 이루어지는 버전관리를 GitHub에 올려서(push) 다른 사람들과 함께 버전관리를 하는 것이 원격 저장소이다. Git 초기설정 Git 처음 설치 시 다음과 같이 설정해주어야 한다. (깃 설치 후 처음 한번만 하면 된다.) git config --global user.name "깃허브이름" git config --global user.emmail "깃헙이메일" 원격 저장소 생성 Github 오른쪽 상단 + 버튼을 통해 New repository 를 통해 새 저장소를 생성한다. New repository : 새 저장소 생성 Import repository : 저장소 불러오기 New gist : 코드 조각을 올리고 싶을 때 new gist 사용 New..

프로젝트 버전 만들기
하나의 프로젝트를 만들다 보면 수정, 최종, 최종본, 진짜 최종, 진짜 최최종 이런식으로 파일을 여러개 만들어 본 경험이 있을 것이다. 하지만 우리는 GitHub 를 이용해 버전을 만들어서 저장할 수 있다! Commit 개발을 시작하는 사람이라면 한번쯤은 '커밋' 이라는 말을 들어봤을 것이다. 여기서 커밋은 하나의 버전을 의미한다. 최종, 진짜 최종, 진짜진짜 최종 이런 파일의 버전을 만든다고 생각하면 된다. 예를 들어, 페이지 1, 2, 3을 만들고 커밋을 하면 프로젝트v1 이 생성되는 것이고, 페이지 2를 수정하고 커밋을 하면 변동이 있는 2페이지만 커밋해서 프로젝트v2 를 생성한다. 이렇게 계속 해서 쌓이는 커밋은 기차처럼 쭉 나열된다. 이 때 최신버전이 있음에도 불구하고 다시 이전 버전으로 돌아가..

Git 초기화와 로컬 저장소 생성
Git 사용하기 1. CLI (Command Line Interface) Git이 제공하는 모든 기능을 사용할 수 있다. 가시적인 부분을 확인하기 어렵다. 2. GUI (Graphic User Interface) 버튼을 눌러서 명령을 실행 그래프, 코드 변경사항을 가시적으로 보기에 편리하다. 폴더에서 Git으로 버전관리하기 명령 프롬프트에서 코딩을 한 폴더에 git init을 작성하면 git을 초기화하며, .git 이라는 숨김폴더로 된 로컬 저장소가 생성된다. 우리는 로컬 저장소에서 버전관리를 할 수 있다. 로컬 저장소에 내가 만든 버전 정보, 원격 저장소 주소 등이 저장된다. 원격 저장소에서 내 컴퓨터로 코드를 받아오면 로컬 저장소가 자동으로 생긴다. 🚨 주의! 한 폴더에 하나의 로컬 저장소만 유지해야..