[Android] 018. git(バージョン管理)

今までバージョン管理は法人向けもあったのでgitでプライベートのnasにアップしていて、昔からの名残でiOSやWindows向けなどもあったので、IDEの機能は使用せずコンソールとSourcetreeを使って運用していました。

今回はGitHubにアップしても良さそうな自作アプリができたのでやったことの覚書です


GitHubにアカウント作成

昔別のblog用に作った個人アカウントはあるのですが今回bps-eとして管理したかったので新規にアカウントを作成しました

とりあえずアカウント作成だけで準備はokですが念のためサブの別ドメインのメールも登録しました


Android Studioでの設定

gitの設定がプライベートのアカウントで登録済みだったので変更します
Android Studioのコンソールから確認と変更をします(OSのコンソールからでも良いです)
プロジェクト単位で設定する場合は–localで設定

# 確認
> git config user.name
> git config user.email

# 変更
> git config --global user.name <new name>
> git config --global user.email <new email>

プロジェクトでgitを使えるようにします
メニューのVCSからEnable Version Control Integration選択してGitを選びます
成功するとメニューのVCSがGitに変わります

メニューのGitからGitHubを選択してShare Project on GitHubを選びます
今回はアクセストークンは使わずGitHubにログインして使用しました

GitHubにログインはAndroid StudioのSettingsでも確認できます

Privateレポジトリにする場合はPrivateにチェック
Android StudioでGithubにログインしていない場合はAdd accountでLog In Via GitHubを選択して紐づけしてShareボタンを押します

管理不要なもののチェックをはずしてCommit Messageに必要な内容を入力したらAddボタンを押してgithubにpushします
※.idiaは削除されても自動生成されますが、プロジェクトの設定によっては管理すべきファイルもあります
個人的な環境の設定やローカル環境のパスが含まれるものなどは管理すべきではないでしょう

GitHubにpushされているかOpen on GitHubを押して確認します

Add a READMEを押してREADME.mdを追加します
更新内容があれば入力してもよいですがここでは何も編集せずCommit changesを押して追加します

Android Studioでpullを実行すればREADME.mdが取得てきているはずです

tagをつけておくと便利なのでメニューのGitのNew Tagからtagを追加して(ここではv1.0.0)pushでPush tagsにチェックを入れてpushします


実際に対応したプロジェクトは実はソース管理をサボっていてプロジェクトが2世代分あったので帳尻合わせをしました…
プロジェクトフォルダ直下にある.gitフォルダを最新のプロジェクトにコピーするだけで対応できます
あと追加したREADME.mdもコピーして更新履歴を記入したりcommitやらtag設定やらしてからgitHubにpushで完了

commit時のwarning

warningやTODO:でcommitに確認が入るのが煩わしい場合の対応です

Warning:(9, 5) 'getRepositoriesMode()' is marked unstable with @Incubating

親切な警告とのことです
警告を抑止
https://stackoverflow.com/questions/63282922/buildfeatures-is-unstable-because-its-signature-references-unstable-marked-w

@Suppress("UnstableApiUsage")
dependencyResolutionManagement {
...
@Suppress("DSL_SCOPE_VIOLATION") // TODO: Remove once KTIJ-19369 is fixed

KTIJ-19369はGradle 8.1.1で対応済みだそうです
現在最新が8.1.3なのでGradleを更新した場合はTODOごと上記を削除してください


Android Studio Giraffe 2022.3.1 built on June 29, 2023