Programming/Github 4

Android Studio / Intellij 에서 Github Repository 만들기

Repository는 한번 만들면 계속 쓰기 때문에 새로운 레포 만들일이 사실 많이 없긴하다. 그래서 자주 까먹곤 하는 GitHub연동법을 기록해놓는다. 이미 Github에 프로젝트가 있다면 터미널에서 원하는곳에 경로 이동해서 git clone ~~~.git 입력하여 으로 내 기기에 다운로드할 수 있다. Fetch All remotes, Update Selected 를 클릭하여 잘 푸시가 되는지 확인해보자.  그런데 내 기기에서만 존재하는 프로젝트를 GitHub에 올릴때, 혹은 GitHub에는 별 거 아닌 파일만(ex. readme) 있는 경우라면 아래와 같이 빠르게 만들 수 있다. 1. Android Studio / Intellji 에서 Project 생성2. 상단 Version control > Cr..

Programming/Github 2024.10.21

Android + CI/CD 적용하기 - CD편 (feat.Github Actions)

CI 에서는 yml 파일을 어떻게 작성하는가에 시간을 많이 썼었다면 CD 에서는 보안파일을 어떻게 외부에 노출시키지 않고, 자동화를 적용하는지에 신경을 많이 썼다. 쿠링 레파지토리의 release 브랜치에 Push 또는 PR이 있을 때 이를 어디에 배포할지에 대한 고민을 첫 번째로 했었고 후보는 플레이스토어에 바로 배포 AWS S3에 apk를 배포 firebase 등에 apk 배포 가 있었다. 플레이스토어에 바로 배포하는 방법도 존재하긴 하지만 바로 검토를 올리는것은 조심스러워서 일단 apk/aab를 받아보기로 했다. 플레이스토어에 출시노트나 다른 세세한 설정들을 만져야 할 때 직접 손으로 하는게 낫다고도 생각했다. 3번째인 firebase에 올리는것이 유력 후보였는데 Github Actions 내에서 ..

Programming/Github 2022.03.11

Android + CI/CD 적용하기 - CI편 (feat.Github Actions)

CI/CD는 Continuous Integration 과 Continuous Deploy(or Delivery) 의 줄임말로, 지속적인 통합과 배포를 의미한다. CI란 CI (Continuous Integration) 개발 + 빌드 + 테스트를 자동화 하는것 (안정화 된 앱 추출) 무엇을 하는것인가? 배포할 브랜치에서 빌드가 잘 되는지 로직 오류 검증을 위한 테스트 코드를 실행하고 결과를 확인 컨벤션 및 코드 스타일 규칙을 지켰는지 CD란 CD (Continuous Deployment) 배포를 자동화 하는것 대표적인 프로세스는 무엇이 있는가? (Android에서) 구글 플레이스토어에 들어가 관련 앱 파일을 업로드 관련된 내용을 팀원들에게 공유 히스토리 관리 및 다음 버전 대비 최근 내가 꾸준하게 관리하고..

Programming/Github 2022.03.09

GitHub에서 commit한 보안파일 히스토리 삭제하기

Github에서 다른 사람들에게 보여주고 싶지 않은 파일들이 있을 수 있다. 예를 들면 google-services.json (firebase의 푸시알림을 위한 데이터가 들어가 있어서 악용하려는 사람이 있다면 앱 사용자에게 악의적인 푸시알림을 보낼 가능성이 생긴다.) 또는 signing 관련 파일, 비밀번호가 저장된 파일이 그럴 수 있다. remote 에 push가 되지 않으면 베스트이지만 push된 상황에서는 이렇게 하면 된다. 첫번째로 ".gitignore"로 해당 파일/폴더가 github에 푸시되지 않도록 한다. 이미 푸시한 상태라면 github의 history를 통해 관련 내역을 볼 수 있기 때문에 아래와 같이 깃헙에서 완전히 삭제하는것이 안전하다. 두번째로 filter-branch 를 이용하여 ..

Programming/Github 2021.11.17