引用: Haghish、EF (2020)。 GitHub で Stata 統計ソフトウェアを開発、保守、ホスティングします。スタタ ジャーナル、20(4)、931-951。
github
、パッケージの以前のリリースを含む、GitHub から Stata パッケージを検索してインストールするための Stata モジュールです。これは、 search
、 findit
、 ssc
などのいくつかの Stata コマンドを組み合わせたものですが、代わりに、GitHub でホストされている Stata パッケージを管理するために作成されています。さらに、このパッケージは、他の Stata ユーザーが利用できないバージョン管理の新機能を提供します (たとえば、このパッケージを使用すると、Stata パッケージの古いリリースをインストールして、古いソフトウェアで実行された分析を再現できます)。
ニュース: gitget
コマンドの紹介。 gitget
使用すると、パッケージのインストールと更新がさらに簡単になります。 GitHub 上のすべての既存の Stata パッケージのデータベースを提供します。これにより、次のように入力するだけで、GitHub でホストされ、 gitget
で認識されるパッケージをインストールできます。
gitget packagename
gitget
コマンドは、GitHub 上の Stata パッケージの完全なリストに基づいてプロジェクトの URL を識別します。このリストは、Stata パッケージを検出する検索プログラムを使用してプログラムによって作成されます。まず、すべての Stata リポジトリが識別され、 repolist.dtaに保存されます。次に、インストール可能なパッケージが抽出され、 gitget.dtaに保存されます。これもパッケージとともにマシンにインストールされます。アーカイブの完全なリストは、このリポジトリ内でプレビューすることもできます。
目次
gitget
コマンドで認識される Stata パッケージの一覧以下の図に示すように、近年、Stata ユーザーは、Stata コードとデータセットの共有、統計ソフトウェアの開発、Stata パッケージのホストのために GitHub を使用することが増えています。これは、Stata コミュニティと研究の透明性を推進するすべての人にとって、まさに良いニュースです。 github
モジュールを使用すると、Stata パッケージの検索、インストール、管理、さらには構築が容易になります。さらに、パッケージの開発バージョンまたは安定版リリースをインストールすることができます。また、自動的にインストールされるパッケージの依存関係を指定できるため、GitHub が Stata ユーザーや開発者にとってさらに魅力的になります。ここでは、 github
パッケージをインストールして使用する方法を簡単に説明します。
github
モジュールのインストール次のコードを実行すると、最新バージョンのgithub
コマンドをインストールできます。
net install github, from("https://haghish.github.io/github/")
パッケージの一般的な構文は次のように要約できます。
github [subcommand] [...]
[ subcommand ] は次のとおりです。
サブコマンド | 説明 |
---|---|
search | GitHub で Stata パッケージを見つける |
findfile | GitHub 上のすべての Stata パッケージの中からファイルを検索します |
install | GitHub からパッケージをインストールします |
list | github でインストールされたパッケージに関する情報を提供します |
query | パッケージの以前のリリースをすべてリストします |
check | リポジトリがインストール可能かどうかをテストする |
uninstall | Stata からパッケージを削除します |
update | GitHub からパッケージを更新する |
version | インストールされているパッケージのバージョンを返します |
[ ... ] は、指定されたサブコマンドに基づいてユーザー名/リポジトリまたはパッケージ名になります。
パッケージをインストールするために必要なのは、GitHub ユーザー名とリポジトリの名前だけです。ユーザー名とリポジトリ名をスラッシュで区切って組み合わせると、必要な URL がリポジトリに提供されます。たとえば、https://github.com/haghish/markdoc でホストされている MarkDoc パッケージをインストールするには、次のように入力するだけで十分です。
github install haghish/markdoc [, stable version("")]
github
パッケージには、GitHub でホストされている Stata パッケージの完全なリストのデータベースが含まれています。したがって、パッケージ名を指定するだけでパッケージをインストールすることもできます。 gitget
コマンド ( github install
のラッパー) は、パッケージ名を尋ねることによってのみ、GitHub から Stata パッケージをインストールまたは更新できます。
gitget packagename [, stable version("")]
たとえば、 markdoc
パッケージをインストールしたい場合、 gitget markdoc
と入力することはgithub install haghish/markdoc
と入力するのと同じくらい便利です。 GitHub でホストされている Stata パッケージのリストを調べたい場合は、 gitget.dtaデータ セットを参照してください。
オプション | 説明 |
---|---|
stable | パッケージの最新の安定リリースバージョンをインストールします |
version(str) | 指定されたリリースバージョンをインストールします |
1 つまたは複数のキーワードを使用して、GitHub で Stata パッケージを検索できます。これは Stata のsearch
またはfindit
コマンドに似ていますが、GitHub パッケージの検索にのみ使用されます。
github search weaver
GitHub API を効果的に検索することは非常に重要です。このため、パッケージには、検索を絞り込んだり、他のソースを含めるように検索を拡張したりするために使用できる構文を表示する検索 GUI が含まれています。 search コマンドは、 net
コマンドでホストされているパッケージのリリース日も分析します。これは非常に便利な機能です。 GUI を起動するには、次のように入力します。
db github
たとえば、 github search
コマンドを使用してmarkdoc
パッケージを検索すると、次の出力が得られます。
github
マシンにインストールされているパッケージを追跡するデータベースが組み込まれており、もちろん、マシンにインストールされているパッケージのバージョンも通知します。バージョンは、開発者が指定したパッケージの一意のリリース タグから取得されます。インストールされているパッケージlist
、それらに関する役立つ情報を取得できます。このコマンドは、GitHub パッケージのいずれかに利用可能なアップデートがあるかどうかも通知します。たとえば、以下の出力では、2 つのパッケージに利用可能なアップデートがあることがわかります。 (update)
リンクをクリックしてパッケージを最新リリースに更新することもできます。
. github list
すべてのパッケージがインストールできるわけではありません。 Stata リポジトリをインストールするには、 tocファイルとpkgファイルが必要です。 check
サブコマンドを使用して、パッケージがインストール可能かどうかを確認できます。
github check haghish/markdoc
GitHub で Stata パッケージを検索するために使用される
github search
コマンドは、インストールできない Stata リポジトリを無視する傾向があるため、これは注意を払うべき重要な点です。つまり、リポジトリにこれらのファイルが含まれていない場合、検索でオプションall
を指定しない限り、そのリポジトリは Stata パッケージとは見なされません (検索 GUI で、インストールできない GitHub リポジトリを表示するオプションをチェックします)。ただし、github
パッケージには、これらのファイルを構築するための GUI も含まれています。github
に付属の GUI を使用すると、リポジトリ用にこれらのファイルを簡単に構築できます (以下を参照)。
パッケージをインストールするには、 uninstall
サブコマンドに続いてパッケージ名を使用します。例えば:
github uninstall markdoc
GitHub では、パッケージのバージョンを無制限にアーカイブできます。 github
コマンドにはパッケージ バージョンを指定するオプションがあり、以前のパッケージ バージョンをインストールできます。たとえば、MarkDoc パッケージの古いバージョン3.8.0
など) をインストールする場合。次のように入力できます:
github install haghish/markdoc , version("3.8.0")
しかし、パッケージのバージョンは確認できましたか? GitHub には、ソフトウェアの以前のリリースをすべてリストするリリースタブがあります (たとえば、MarkDoc の以前のリリースを参照してください)。しかし良いニュースは、 github
は Stata 結果ウィンドウに以前のリリースをすべてリストするためのサブコマンドがあり、マウスを 1 回クリックするだけでそれらのいずれかを (指定されている場合はその特定のバージョンのパッケージの依存関係も含めて) インストールできることです。プログラム的に。これを行うには、次のように入力します。
github query username/repository
たとえば、 MarkDocの以前のリリースを一覧表示するには、次のように入力します。
. github query haghish/markdoc
----------------------------------------
Version Release Date Install
----------------------------------------
3.8.5 2016-10-16 Install
3.8.4 2016-10-13 Install
3.8.3 2016-10-03 Install
3.8.2 2016-10-01 Install
3.8.1 2016-09-29 Install
3.8.0 2016-09-24 Install
3.7.9 2016-09-20 Install
3.7.8 2016-09-19 Install
3.7.7 2016-09-18 Install
3.7.6 2016-09-13 Install
3.7.5 2016-09-08 Install
3.7.4 2016-09-07 Install
3.7.3 2016-09-06 Install
3.7.2 2016-09-05 Install
3.7.0 2016-08-23 Install
3.6.9 2016-08-16 Install
3.6.7 2016-02-27 Install
----------------------------------------
MarkDocなどの動的ドキュメント ソフトウェアを使用して分析を作成する場合は、分析で使用されているパッケージのバージョンを報告する必要があります。 version
サブコマンドに続けて次のコマンドを使用すると、インストールされているパッケージのバージョンをプログラムで取得できます。
. github version markdoc
3.8.0
github list
コマンドはインストールされているパッケージのバージョンをすでに表示しており、利用可能なパッケージの新しいバージョンがあるかどうかもチェックするため、このコマンドには他の用途はありません。
一部のパッケージは他のパッケージに依存します。 github
コマンドを使用すると、特定のバージョンの有無にかかわらず、パッケージの依存関係をインストールできます。そのためには:
dependency.do
という名前のファイルを作成し、リポジトリに含めます。github
コマンドを使用してパッケージの依存関係をインストールし、必要なバージョンも指定します。github
コマンドは、パッケージのインストール後にdependency.do
を検索し、リポジトリ内でそれが見つかった場合は、それを実行します。たとえば、 MarkDoc パッケージには、依存関係ファイルの作成方法の例として役立つdependency.do
ファイルがあります。当然のことながら、 dependenc.do
ファイルはgithub install
コマンドでのみ実行可能です。
github
パッケージには、GitHub でホストされているパッケージ内にインストールされるすべてのファイルのデータベースが含まれています。これは、開発者にとって、別の開発者が使用する名前のファイルの作成を避けるための重要な機能です。そのようなパッケージは同じシステムに一緒にインストールできないためです (問題はプログラム名にも存在します)。 github
パッケージを使用すると、開発者は特定の名前が以前にパッケージ内で使用されているかどうかを確認できます。
findfile
サブコマンドは、 githubfiles.dta
(パッケージとともにインストールされる) を検索し、見つかった場合は、そのファイルを含むリポジトリを指摘します。たとえば、キーワード「dy」を含むファイルを検索すると、次の結果が得られます。
. github findfile dy
---------------------------------
Searching githubfiles database
---------------------------------
dynpandoc.ado
dynpandoc.sthlp
dynamicPage1.mata
---------------------------------
これらのファイルには、結果ウィンドウでクリックすると、リポジトリへのリンクも含まれます。
ado ファイルと Stata ヘルプ ファイルを作成したと想像してください。リポジトリをインストール可能にするにはどうすればよいですか? stata.tocファイルとpackagename.pkgファイルを手動で作成し、必要な情報、インストールするファイルなどgithub
指定する必要があります。github パッケージには、厳密なレイアウトを使用してパッケージのインストールを生成するmake
GUI が導入されています。インストールするファイルを選択し、必要な情報を指定するだけで、 tocファイルとpkgファイルを準備できます。これらのファイルをリポジトリにコピーすると、すぐにインストール可能になります。
作業ディレクトリをリポジトリ パスに変更し、次のように入力して GUI を実行します。
db make
必要な情報を書き留め、インストールするファイルを選択します。 OKを押して楽しんでください!
gitget
コマンドで認識されるStataパッケージ一覧gitget
データセットは、 github
パッケージとともにダウンロードされます。このデータセットは毎月更新されます。 gitget
パッケージの完全なリストを表示するには、ここをクリックしてください。
EF ハギッシュ
医用生体計測・医療情報学センター
フライブルク大学、ドイツ
@ハギッシュ