ロードしようとするとhttps://domain/path/project.git/HEAD
、bitbucket と github の両方で 404 が返されますが、git book (git-scm.com) によると、これは当てはまりません。
これら 2 つのサイトは特殊なケースですか、それとも何か間違ったことをしているのですか?
可能であれば、リポジトリ全体をダウンロードしたくないことに注意してください。
あなたがしようとしていることは、単に静的ファイルを使用していた古い Git HTTP プロトコルを想定しています。Github と Bitbucket は、アクティブな (プログラムされた) サーバーで Git の新しい HTTP プロトコルを使用するため、「HEAD」という名前の URL はありません。
したがって、少なくともスマート クライアントを使用して通信する必要があります。ただし、必ずしもリポジトリのクローンを作成する必要があるとは限りません。完全なクローンを作成せずにサーバーと対話するためのツールが存在する可能性があります。たとえば、次のようなものがありgit ls-remote
ます。
$ git ls-remote http://server/git/project
7f38468acf1de9b73d931aebf9a8add8f691a6dc HEAD
7f38468acf1de9b73d931aebf9a8add8f691a6dc refs/heads/master
詳細については、 のマンページを参照してくださいgit-http-backend
。
(また、回避したいのが「リポジトリ全体のダウンロード」だけである場合は、単純に浅いクローンを実行できることに注意してください。)
これは、Github APIで実行できます。基本認証 (必要な場合) を使用して GET を呼び出し/repos/:owner/:repo/commits
、JSON 応答を解析するだけです。
ご質問は HTTP に関するものでした...これは単なる代替手段です。それ以外の場合は可能だとは思いません。