GASのバージョン管理の課題とGoogle Apps Script GitHub アシスタントができること

code

photo credit: Listenwave Photography Old via photopin (license)

みなさん、こんにちは!
タカハシ(@ntakahashi0505)です。

Google Apps Script(GAS)のプロジェクトのバージョン管理をしたいとき、皆さんどうされてますか?

実は、GAS自体にはバージョン管理の機能は存在しておらず、悩みの種になることも…

それを補ってくれるのが、Google Chrome拡張機能「Google Apps Script GitHub アシスタント」です。

今回からシリーズで、その導入方法や使い方についてお伝えしていきますよ!

ということで、まず初回はGASのバージョン管理の課題とGoogle Apps Script GitHub アシスタントができることについてお伝えします。

では、行ってみましょう!

スポンサーリンク

GASのバージョン管理とその課題

まず、バージョン管理とは何か、またGASで何が課題なのかについて確認しておきましょう。

バージョン管理とは

バージョン管理というのは、ソースコードの変更の履歴を記録しておいて、それを管理する機能のことです。

それでいうと、スプレッドシートやドキュメントなどのGoogle Docsには「版の管理」という機能が思い浮かびますよね。それが、まさにバージョン管理の機能です。

GASでライトなツールをサクっと作って運用する分には、問題になることは少ないかもしれません。

しかし、開発の規模が大きかったり、複数人で管理・運用をしたり、長期で引き継ぎをしながら運用したりといったときに、コードの変更の履歴やその際のコメントなどが残っていると助かることも多いのです。

GASのバージョン管理の課題

残念ながら、GASのバージョン管理の機能は不十分です。

GASのスクリプトエディタには、それとは別に「変更履歴」という機能がありましたが、2020年12月の新IDE導入により、機能自体が削除されてしまいました。

(といっても、機能としては大変チープであまり使い勝手の良いものではありませんでしたが…)

コンテナバインドスクリプトであれば、Google Docsの「版の管理」の機能を使って、簡易的にバージョン管理ができないこともありません。

しかし、各バージョンのコードを確認したいときには、該当の版に戻すまたはコピーを作成して、スクリプトエディタを開いて…ととても面倒。現実的ではありません。

ということで、デフォルトの状態では打つ手なし…という状況なのです。

Google Apps Script GitHub アシスタントとその機能

Google Apps Script GitHub アシスタントとは

そこで、Google Apps Script GitHub アシスタントの登場です。

Google Apps Script GitHub アシスタント - Chrome ウェブストア
GitHub/GitHub Enterprise/Bitbucket/GitLabでGASのインラインコードを管理

Google Apps Script GitHub アシスタントはGoogle Chromeの機能拡張で、ソースコード管理サービスGitHubと連携してバージョン管理を行うことができるものです。

GitHubには「リポジトリ」という、プロジェクトごとにソースコードの履歴を管理する保管場所をつくることができます。

Google Apps Script GitHub アシスタントは、スクリプトエディタに機能拡張をして、以下の操作を行うことができます。

  • GitHubに新しいリポジトリをつくる
  • 変更履歴の分岐をつくる(ブランチ)
  • 現在のプロジェクトを新たな変更履歴として記録する(コミット・プッシュ)
  • GitHubの最新の変更履歴を現在のプロジェクトに反映する(プル)

各機能とその使い方については、シリーズで詳しく紹介していきます。

GitHubでのバージョン管理のメリット

Google Apps Script GitHub アシスタントによるメリットは、ソースコードの履歴を残せる以上のものがあります。

というのも、GitHubはバージョン履歴を記録するだけでなく、他のユーザーと共有したり、コラボレーションをする機能が充実していて、それも活用できるようになるからです。

以下に、まとめてみます。

  • ソースコードの履歴とコメントを記録、閲覧、差分確認ができる
  • ソースコードを他のユーザーと簡単に共有、配布できる
  • 他のユーザーと共同して開発、運用ができる

これは、GASの可能性が大きく広がりそうですね…!!

Gitでのバージョン管理と異なる点

バージョン管理といえばGitというツールを使うのが一般的なのですが、Google Apps Script GitHub アシスタントでのバージョン管理は、Gitとは異なる点がありますので注意が必要です。

具体的には以下となります。

  • ローカルリポジトリはなく、直接リモートリポジトリにプッシュ
  • コミットはプッシュをしたときにだけ行われる(なので、1コミット=1プッシュ)
  • プルをするとプロジェクトが上書きされる(※注意)

Gitを使ったバージョン管理については、以下の記事にまとめていますので、こちらをご覧いただければイメージがつかめると思います。

【ノンプログラマー向け】Gitによるバージョン管理の超基礎知識
ノンプログラマー向け技術同人誌の制作プロジェクトとその制作方法についてお伝えしています。今回は、ノンプログラマー向けにGitとは何か、またそれによるバージョン管理の超基礎知識についてお伝えします。

まとめ

以上、GASのバージョン管理の課題とGoogle Apps Script GitHub アシスタントができることについてお伝えしました。

活用することで、GASの可能性がぐっと広がりそうですよね。

私が運営するコミュニティ「ノンプロ研」でも、ソースコードの管理の学習やライブラリ開発などに取り組んでいきたいと考えています。

2021年コミュニティ「ノンプロ研」ではじめる3つの新たな取り組みについて
「ノンプログラマーのためのスキルアップ研究会」はプログラミングをはじめとするITスキルを学び合うコミュニティです。今回は、先日開催された定例会「2021年ノンプロ研ではじまる新しいこと」のレポートをお送りします。

さて、次回から、具体的にGoogle Apps Script GitHub アシスタントを導入していきます。

GASのバージョン管理をする拡張機能Google Apps Script GitHub アシスタントの導入方法
GASのバージョン管理のためのChrome拡張機能「Google Apps Script GitHub アシスタント」の使い方をシリーズでお伝えしています。今回は、その導入方法と認証の設定方法についてわかりやすく解説をしています。

どうぞお楽しみに!

連載目次:Google Apps Script GitHub アシスタントによるGASバージョン管理

GAS自体にはバージョン管理の機能が乏しく、悩みの種になることも…それを補ってくれるのが、Google Chrome拡張機能「Google Apps Script GitHub アシスタント」です。この機能ではその概要、導入方法から使い方までを初心者向けに解説していきますよ!
  1. GASのバージョン管理の課題とGoogle Apps Script GitHub アシスタントができること
  2. GASのバージョン管理をする拡張機能Google Apps Script GitHub アシスタントの導入方法
  3. Google Apps Script GitHub アシスタントでリポジトリとブランチを作成する方法
  4. Google Apps Script GitHub アシスタントで変更履歴をプッシュする方法
  5. Google Apps Script GitHub アシスタントでリポジトリからプルをする方法
タイトルとURLをコピーしました