일반적으로 workflow는 여러 개의 job들이 있고 해당 job들이 모두 성공적이라면 성공이 뜨지만 3가지의 job이 있다고 했을때 2번째 job이 실패했다고하면 3번째 job은 실행되지 않는다. 실패한 시점에서 끝나게 되는것. 하지만 if를 사용하여 위와 같은 상황을 조건을 주어 실패를 해도 step 및 job을 실행시킬수가 있다. true / false 값 알아내기 ......step.... - name: Test code id: run-tests #모든 단꼐에 고유 id를 설정할수 있음, 다른단계나 작업에 사용하기 위한. run: npm run test - name: Upload test report #이 if문은 오로지 테스트가 실패한게 맞으며 테스트의 id인 run_test의 outcome이..
Matrix • 일련의 작업을 병렬로 실행하거나 다양한 구성을 시도하는 데 사용되는 개념 • 보통 행렬로 나타내어짐 • 각 행은 다른 구성 또는 환경을 나타내고, 각 열은 해당 환경에서 실행되는 작업을 나타냄. • 각 조합에 대해 작업을 실행하고 결과를 수집하여 전체 파이프라인의 효율성과 안정성을 향상 시킴. name: Matrix practice on: push jobs: build: strategy: matrix: node-version: [12, 14, 16] operating-system: [ubuntu-latest, windows-latest] include: - node-version: 18 operating-system: ubuntu-latest exclude: - node-version: ..
name: Project on: [push, workflow_dispatch] 위 코드와 같이 기본적으로 워크플로 트리거 역할을 하는 대표적인 Event들이 있다. Trigger Event 작동 설명 push 깃허브에 push했을시 workflow작동 pull_request 깃허브에서 pr했을시 workflow작동 create 분기나 태그를 만들었을 경우 workflow작동 fork 깃허브에서 누군가가 내 레포지토리를 fork했을 경우 workflow작동 issues 깃허브 issue관련된 일이 발생했을시 workflow작동 issue_comment 깃허브 issue 또는 pr에서 comment가 작성되었을 경우 workflow작동 watch 깃허브 저장소에 별표가 달렸을경우 workflow작동 disc..
GitHub Action이란? github에서 공식적으로 제공하는 CI/CD툴로서 개발의 workflow를 자동화할 수 있게 도와주는 틀이다. CI / CD란? - 소프트웨어 개발의 전반적인 과정을 자동화 하여 빠른 소프트웨어 제공을 가능하게 하는 개념. - 비즈니스 로직. 즉, 개발하는것에 더 집중할 수가 있다. CI(Continuous Integration) - 지속적인 통합 • 모든 사람의 코드를 통합하고 나머지 애플리케이션과 함게 릴리스 인프라를 구축한다. • 빌드와 테스트의 자동화 과정. • CI를 성공적으로 구현하면 애플리케이션에 대한 새로운 코드변경 사항이 정기적으로 빌드/테스트되어 공유 리포지토리에 통합된다. • 협업을 할 때 서로 충돌할 수 있는 문제를 해결할수 있고 변경으로 인해 문제가..
명령어 설명 예시 git init 깃 저장소 초기화 git init git add or git add . 커밋할 코드 추가 | 커밋할 코드 전체 추가 git add index.html | git add . git commit -m "..." 추가한 코드 커밋메시지(...)와 함께 커밋. git commit -m "init index.html" git status 현재 깃 커밋한 상태 보기 git status git log 시간순으로 커밋 목록 출력 git log git checkout 커밋한곳(id)으로 이동 git checkout 12adaf12312s git revert 기록은 남겨놓고 커밋 사이를 이동 (새로운 커밋을 만들기위해) git revert 12adaf12312s git reset 기록을 ..
일단 AWS에 가입이 되어있고 카드 등록이 다 된상황이라고 가정하고 시작 합니다. EC2 Instance 생성 • AWS EC2에서는 컴퓨터 하나의 단위를 Instance라는 이름으로 부릅니다. 즉, EC2를 생성한다는것 = 서버컴퓨터 대여 1. 콘솔 홈으로 들어갑니다. 2. Region(지역) 선택 - EC2 Instance가 어떤 지역에서 켜질지 선택합니다. 지역이 가까울수록 접속 속도가 빨라집니다. 3. EC2 Instance 생성 : EC2 서비스 페이지로 이동합니다. 상단 검색창에 EC2를 입력해 첫번째로 나오는 것을 클릭해 이동합니다. 4. EC2 Instance 생성: 운영체제 선택 4 - 1. 애플리케이션 및 OS이미지 선택합니다. ubuntu 선택 Amazon Machine Image(A..
Large files detected. You may want to try Git Large File Storage에러 이런 에러가 뜨면서 파일 용량에 관한 메세지가 뜰텐데 깃허브는 100MB이하의 파일만 올릴수 있다고 합니다. video와 함께 깃허브에 올릴것이기 때문에 파일을 함께 올렸어야 했습니다. 비디오를 압축도 해보고 다 했지만 안되서 구글링을 하다가 방법을 찾았습니다. 1. 일단 commit을 한상태이기 때문에 에러났을때의 커밋 기록을 지워줍니다. 2. git log로 기록을 확인한뒤 git log 3. 커밋 내역을 지워줍니다. (HEAD~5는 5개의 기록을 삭제 하겠다는것.) git reset --mixed HEAD~5 4. lfs를 설치합니다. git lfs install 5. 관리하고 싶..
팀끼리 프로젝트를 한다면 혼자 개발을 할 때 와는 달리 기능별로 맡은 분야 별로 작업을 진행 할 것입니다. 그 때 코드를 리뷰하고 충돌이 나지 않게 하면서 요구 사항을 관리하고 진척도를 확인해야 합니다. 그 때 필요한 깃 명령어 및 명령어 사용법, 깃허브 기능들을 정리 해 보았습니다. branch - 프로젝트 복사본 만들기 동일한 프로젝트를 기반으로 서로 다른 버전의 코드를 만들어 낼때 사용합니다. branch란 프로젝트 기준 코드인 main브랜치로부터 독립적인 작업 공간을 만들어주는 기능입니다. 여러 개발자가 서로 다른 버전의 코드를 만들 때 서로의 작업에 영향을 주고받지 않기 위해 필요합니다. branch만들기 - git branch 개발자가 개발하려는 기능과 관련이 있는 이름을 짓는 것이 좋습니다...