본문 바로가기

Develop/Flutter

[Flutter] Plugin 비공개 배포

일반적으로 우리는 Flutter Plugin을 사용하기 위해서 pub.dev에서 사용하고자하는 Plugin을 찾아 종속성에 추가하여 사용한다.

예시

만약 내가 Plugin을 개발했을 때도 마찬가지의 형태로 pub.dev를 통해 공유할 수 있지만 노출이되면 안되는 비공개 Plugin의 경우

GitHub등 Git repo를 통한 직접배포하여 프로젝트의 종속성에 연결해야한다.
그 중 GitHub를 사용한 배포 및 종속성 연결방법을 정리해둔다.

GitHub repo를 사용한 방법

"flutter_plugin_abc"라는 Plugin 패키지를 만들었고 GitHub에 업로드했다고 가정하고 진행합니다.

1. SSH 키 생성

만약 다른 작업으로 이미 만들어둔 SSH키가 있다면 2단계로 넘어가세요

Terminal 또는 CMD에서 명령을 실행합니다.

ssh-keygen

※ 암호를 설정하면 종속성 업데이트(flutter pub get)가 작동하지 않기 때문에 비워두는 것을 추천합니다.

2. GitHub 계정에 SSH 키 추가

계정 설정에 접속한 뒤 SSH and GPG keys 메뉴 선택.

1단계에서 생성한 SSH키 파일을 열어 GitHub에 Key를 추가합니다.

SSH키 파일은 생성시 path를 지정할 수 있지만 설정하지 않았다면 default path(\Users\name\.ssh\)에 저장됩니다.
생성된 파일이 만약 id_rsa라면 id_rsa, id_rsa.pub 두가지가 생성되고 GitHub에 SSH 키를 입력할 때 key란에는 id_rsa.pub의 데이터를 넣어줍니다.

 

3. Config 파일 수정

생성된 SSH키가 있는 폴더에 config파일이 있고 그곳에 GitHub에 연결했던 SSH 키 파일을 연결합니다.
만약 config파일이 없다면 새로 생성하면 됩니다.

Host github # can be anything, just an identifier
    HostName github.com
    PreferredAuthentications publickey # authentication mechanism
    User git # github 계정
    IdentityFile ~/.ssh/id_rsa # SSH키 path

 

4. 프로젝트에 종속성 추가

dependencies:
  flutter_plugin_abc:
    git:
      url: git@github.com:flutter_plugin_abc.git
      ref: master #optional

url은 GitHub repo에서 code -> SSH 주소이고 ref는 branch 입니다.

 

반응형

'Develop > Flutter' 카테고리의 다른 글

Xcode16 iOS 18 build error  (1) 2024.12.26
[Package] 디자이너와 협업을 위한 개발툴  (0) 2024.09.11
Enum을 더 편하게 사용하기  (0) 2024.06.20
[Package] FontSize 맞춤 위젯 개발  (0) 2024.06.03