GithubのドキュメントにもSOもありませんでした。しかし、foo
という名前のプライベートリポジトリにhttp://foo.github.com
があり、foo
リポジトリ自体にアクセスできるのは1つだけであるのではないかと思っていました。
Githubページが常に公開されていることを読んだことを覚えていますが、それを見つけることができなくなったようです。
そして驚くべきことに、私は質問をしている他の誰かを見つけることもできないようです。
Githubに対してサポートチケットを作成し、すべてのページが公開されているという事実を確認する応答を得ました。 help.github.com/pagesにメモを追加するように依頼しました。
GitHub Pages documentation によると:
すべてのプロジェクトリポジトリは、ジェネレータを使用して公開する準備ができています。 ただし、プライベートリポジトリは公開されているページを公開することに注意してください。
そのため、現時点では、プライベートGitHubリポジトリからプライベートGitHubページを作成する方法はありません。
編集:
役に立つかもしれないsome状況の回避策は、レポジトリをGitHubページ形式以外のものに名前を変更することです(たとえば開発段階で)公開する準備ができたら、名前を修正します。認証されたページを公開する方法を探している場合、これはまだ役に立ちませんが、進行中のGHページプロジェクトを非表示にしたいだけなら、これは役立つ可能性があります。
別の方法として、 Jekyll Auth というプロジェクトがあります GitHubber @benbalter はそのような用途のために作られました。 Jekyll Authは、GitHubページを含むjekyllプロジェクトの基本認証ラッパーを提供します。 使用方法については、リポジトリのREADMEを参照 .
page.github.com には次の記述があります。
Githubページは無料でホストされており、サイトを通じて簡単に公開できます。
アクセス制御に言及することなく。
GitHub page help もACLについて言及していません。
これらは gh-pagesブランチ で最適に管理され、 自分のサブモジュール で管理できます。
ただし、GitHubで公開された可視性の制限はありません。
静的コンテンツを動的にロードする前にoAuth承認を要求する方法に関する実用的なアイデアの記事があります。
プライベートリポジトリのJSONバックエンドでGithubページで実行されるサイトのセキュリティ保護
コンテンツは、閲覧者が読み取りアクセス権を持つ秘密のGitHubリポジトリに保存する必要があります。 GitHubページには、提供するJSコードのみが保存されます。
上記で概説したように、Githubページはその機能をサポートしていません。私たちのチームがプロジェクトドキュメント(静的HTML)を社内および非公開でホストすることを決めたとき、私は同じ問題を抱えていました。
最終的にサービスを作成しました https://www.privatehub.cloud これは基本的にGithub OAuth認証を備えたシンプルなプロキシサーバーであるため、GitHubリポジトリのコンテンツを返すだけです適切なMIMEタイプ。設計上、foo
にアクセスできるユーザーのみがhttps://bar-foo.privatehub.cloud
でfoo
のコンテンツを見ることができます。機能的な観点からは、組み込みの認証を備えた単純化されたGitHubページと考えることができます。
残念ながら、Github OAuthはプライベートリポジトリへのread-only
アクセスのリクエストを許可していないため、サーバーはフルアクセスを必要とします(明らかに、リポジトリに何も書き込みません)。 GitHub APIでは1 Mb未満のファイルのみを取得できるため、サービスは大きなファイルを返すことができません。それでも、このサービスは内部ドキュメントやWebサイトのステージングバージョンの小規模プロジェクトに非常に適していることがわかりました。
プライベートリポジトリでadminを押して、ページに関する部分まで下にスクロールすると、それがパブリックであると書き込まれます。 .htaccess制御などが可能かどうかは後で確認しますが、あまり期待していません。
GitLab を使用できます。プライベートプロジェクトを定義でき、すべての機能はGithubのようなものです。