コンテンツにスキップ

GitHubでのホスティング

  • shard.ymlで指定されているのと同じnamedescriptionでリポジトリを作成します。

  • すべてを追加してコミットします

    $ git add -A && git commit -am "shard complete"
    
  • リモートを追加します。(<YOUR-GITHUB-USERNAME><YOUR-REPOSITORY-NAME>を適切に置き換えてください)

    注記

    必要であれば、publicorigin、または任意のリモート名に置き換えてください。

    $ git remote add public https://github.com/<YOUR-GITHUB-NAME>/<YOUR-REPOSITORY-NAME>.git
    
  • プッシュします

    $ git push public master
    

GitHubリリース

GitHubリリースを行うことをお勧めします。

READMEの記述の下に、次のマークダウンビルドバッジを追加して、ユーザーに最新のリリースを知らせます。(<YOUR-GITHUB-USERNAME><YOUR-REPOSITORY-NAME>を適切に置き換えてください)

[![GitHub release](https://img.shields.io/github/release/<YOUR-GITHUB-USERNAME>/<YOUR-REPOSITORY-NAME>.svg)](https://github.com/<YOUR-GITHUB-USERNAME>/<YOUR-REPOSITORY-NAME>/releases)

まず、リポジトリの*リリース*ページに移動します。これは、https://github.com/<YOUR-GITHUB-NAME>/<YOUR-REPOSITORY-NAME>/releasesにあります。

「新しいリリースを作成」をクリックします。

Crystal ShardsのREADMEによると、

Gitリポジトリからライブラリがインストールされる場合、リポジトリには、vで始まるsemverのような形式に従ったバージョ ンタグが必要です。例:v1.2.3、v2.0.0-rc1、またはv2017.04.1

したがって、`tag version`と表示されている入力に、`v0.1.0`と入力します。これが`shard.yml`の`version`と一致することを確認してください。タイトルを`v0.1.0`にして、リリースの簡単な説明を書きます。

「リリースを公開する」をクリックすると、完了です。

READMEのGitHubリリースバッジが更新されたことがわかります。

セマンティックバージョニングに従って、新しいコードを`master`にプッシュするたびに新しいリリースを作成します。

継続的インテグレーション

GitHub Actionsを使用すると、コミットごとにプロジェクトを自動的にテストできます。専用のガイドに従って設定します。

また、README.mdの記述の下にビルドステータスバッジを追加することもできます。

GitHub Pagesでのドキュメントのホスティング

GitHub Actionsの設定の拡張として、APIドキュメントサイトをビルドしてからアップロードする手順を追加できます。

    steps:

      - name: Build docs
        run: crystal docs
      - name: Deploy docs
        if: github.event_name == 'push' && github.ref == 'refs/heads/master'
        uses: ...
        with:
          ...

-- 後者の`...`プレースホルダーは、ディレクトリを* gh-pages *ブランチにプッシュするための一般的なGitHub Actionsのいずれかです。いくつかのオプションは次のとおりです。

これは、Crystalの組み込みAPIドキュメントジェネレーターを使用して、コードとコメントに基づいて一般的なサイトを作成します。

生成されたAPIドキュメントを公開するだけでなく、プロジェクトの完全なテキストマニュアルを作成して、バランスの取れた紹介を検討してください。

静的サイト生成のオプションの1つであるmkdocs-materialには、APIドキュメントをドキュメントサイト全体に緊密に統合するソリューションがあります:mkdocstrings-crystal。`crystal docs`の代替として検討してください。