[TIL-230516] Android Studio + 로컬 소스 github 연동

반응형

안녕하세요

이번 포스팅은 로컬에 작성한 코드를 Github 반영하기 위한 작업을 작성하려 합니다.
해당 포스팅은 기존 로컬 소스를 github에 저장하여 연동하는 것을 소개합니다.

 

etc-image-0


Github Token 획득

Android Studio와 Github 연동을 위해서는 Github 계정에서 Token을 생성하여 사용해야합니다.

** 2021년 8월 13일 이후로는 기존 ID/PW 인증을 금지하고, 이후부터는 Personal Access Token(이하 token) 방식의 인증을 요구하고 있습니다.

1. Github 사이트에 로그인 후, 프로필 아이콘 - Settings를 클릭합니다.

etc-image-1

 

2. 맨 아래의 Developer Settings 메뉴를 클릭합니다.

etc-image-2

 

3. 이후 화면에서 Token 생성을 위해 Personal access tokens - Tokens (classic) - Generate new token 순서로 클릭합니다. ** 현재 Beta인 다른 방식보다 현재 사용하고 있는 방식으로 진행합니다.

etc-image-3

 

4. 이후 화면에서 적당한 이름을 입력하고, token에 부여할 권한을 체크 후 Generate token 버튼을 클릭합니다.

etc-image-4
etc-image-5

 

5. 생성된 token을 복사해둡니다.
** 해당 키는 첫 화면에서 복사할 수 있고, 화면을 벗어난 이후에는 알 수 없기에, 바로 복사 후 연동을 위해 잠시 보관해둡니다.

 

Android Studio 메뉴

1. Android Studio의 메뉴 중 VCS - Create Git Repository... 을 선택합니다.

etc-image-6

2. 디렉토리 선택하는 창에서, Github에 최초 반영할 프로젝트를 선택한다.

blob

 

3. 로컬에서는 Git Repository가 생성되었고, VCS 메뉴가 없어지고, 오른쪽 하단에 master 브랜치가 생성된 것을 확인하실 수 있습니다.

etc-image-8
etc-image-9

 

4. 이제 Github에 최초 반영을 하기위해서는, 로컬에서 Commit - Push 처리를 해야합니다. Android Studio 내에서는

     1. Commit할 프로젝트 를 우클릭
     2. Commit과 Commit 메세지 작성 후 Commit
     3. 1번에 Commit한 프로젝트를 우클릭 Git - Push 클릭
     순으로 진행합니다. (아래 화면 순)

etc-image-10

 

etc-image-11
etc-image-12


5. Push를 진행해야 Github에 반영할 수 있지만, 지정된 저장소가 없어 Push 진행이 안됩니다. 아래의 화면에서 보이는 Define remote를 클릭하여, remote URL을 입력후 OK를 클릭합니다.

etc-image-13

 

** Github의 URL은 Github 계정을 만들고, Repository를 생성하면 얻는 URL입니다. Github의 해당 Repository로 이동한 후 아래의 화면에서 빨간색 버튼을 클릭하여 URL을 복사하여 사용합니다.

etc-image-14

 

6. URL 입력 후 Use Token을 입력하여, 위에서 생성, 복사해두었던 Token을 입력합니다.

etc-image-15
etc-image-16


7. Log In을 진행하면 로딩 후 Push 화면에서 Push 버튼이 활성화 됩니다. Push 버튼을 클릭하여 진행후 완료합니다.

etc-image-17

 

8. Github에 생성해두었던 Repository에 코드가 반영된 것을 알 수 있습니다.

etc-image-18

 


오늘은 Android Studio + Github 연동에 대해 알아보았습니다.

오늘은 이전에 적용하였던 Google Map 출력을 Jetpack Compose를 이용해서 구현해보았습니다.

잘못된 내용이 있다면 댓글 부탁드리고, 내용이 좋았다면 공감, 구독 부탁드려요!

반응형