問題タブ [cgit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
git - gitolite + cgit: リポジトリが見つかりません
セットアップと構成が完了し、 Web インターフェイスをgitolite
構成したいと考えています。cgit
問題:
を使用してディレクトリを参照するcgit
と、次のエラーが表示されます。
リポジトリが見つかりません
設定
新しいリポジトリが作成さgitolite
れると、それに対応するディレクトリが/home/git/repositories
自動的に作成されます。cgit
以下を使用してこれらのリポジトリを読み取るように構成されています。
問題は、これらのリポジトリが裸のリポジトリではないように見えることです。代わりに、これらのリポジトリのいずれかを手動で複製する場合
うまくいくようです。gitolite
新しいリポジトリがチェックインされるたびに手動でこれを行いたくありません。これを自動化するにはどうすればよいですか?
python - Pythonソースコードを相互参照するgit Webゲートウェイはありますか
cgit と Trac を使用して、Web ブラウザーからソースを参照しています。私が見逃していることの 1 つは相互参照 (つまり、ソース コード内のトークン定義へのリンク) です。lxr を見たことがありますが、cgit などには接続されていないようです。
そのようなものは見つかりましたか?
乾杯、
アレックス
git - http を介したプルとプッシュで cgit をセットアップするにはどうすればよいですか?
http をプッシュまたはプルできる cgit インスタンスをセットアップしようとしています。ただし、cgit を介して http 経由でリポジトリを参照できますが、このリポジトリにプッシュしようとすると、エラーが発生します。
致命的です。/info/refs が無効です。これは git リポジトリですか?
このパスはサーバー上に存在し、これは空のファイルです。git update-server-info を自動的に実行する更新後のフックを作成しました (リポジトリの post-update.example)。しかし、http 経由で /info/refs ファイルを表示しようとすると、cgit から、これが空のリポジトリであるという通知が表示されます。
cgit が提供する URL でプッシュまたはプルできるように、http 経由でこのファイルにアクセスするにはどうすればよいですか?
共有ホスティングプロバイダーにリポジトリがあるため、apache.conf にはアクセスできず、.htaccess ファイルにしかアクセスできません...
nginx - Nginxとauth_basicとcgit
Nginxを実行しているArchLinuxサーバーで、cgitを正しくセットアップしました。1つのディレクトリを除いて、基本認証パスワードでcgitを保護したい/pub/
。ドキュメントに見られるように、私はコンテキストに認証を設定し、ディレクトリのコンテキストでserver
例外を取得することを考えました。パスを正しく取得するために、このリンクを試しました。location
/pub/
こちらが対応するパーツのnginxの設定ファイルです。
これにより、URLが何であれ認証を求められます。いくつかの簡単なテストのために、私は認証なしで、認証のみでrootを残そうとしました/pub/
。この場合、パスワードはまったく要求されません。これまでのところ、私はなんとかすべてまたは何も保護することができませんでした。
あなたの助けに感謝します、そして私のおおよその英語をお詫びします。
git - 「ワイルド」リポジトリ作成時の gitolite 実行フック
チームのメンバーによって新しいリポジトリが作成されたときに、projects.list ファイルを生成するスクリプトを実行する必要があります。
「マスター」から分岐するファームウェアを開発しますが、ブランチがマスターにマージされることはありません。マージバックは決してないので、ファームウェアの異なるバージョンごとにリポジトリを作成することにしました。projects.list ファイルを作成する bash スクリプトを作成しました。
現在、そのスクリプトを呼び出すためのフックの作成に問題があります。
gitolite でファイルを生成しようとしましたが、うまくいきませんでした。どんな助けでも大歓迎です。ありがとう!
答え
config/gitolite.conf で、リポジトリ定義を次のようにしました。
apache - htaccess: cgit.cgi をパスから削除
したがって、共有ホストにcgitをインストールしました。私はそれをカスタム コンパイルし、シンボリック リンクを使用して更新されたビルドからビルドにリンクし、最新バージョンをテストしまし$HOME/mydomain-and-public-www-folder.tld/g
た$HOME/local/lib/cgit/prod
。$HOME/local/lib/cgit/${git describe}
これには何が含まれますか?
さて、ブラウザに入力すると、ランディング ページがすべて見栄えがよくなりhttps://mydomain.tld/g/
、きれいな cgit インターフェイスが表示されます。任意のリンクをクリックすると、適切なリポジトリが表示されますが、すべての書式設定が失われています (CSS、PNG、および JS ファイルはさようなら、すべてのリンクはhttps://mydomain.tld/g/cgit.cgi/randomrepo.git
すべての URL のフォームになっています。もちろん、すべてのファイルブラウザは、必要な .htaccess ファイルhttps://mydomain.tld/g/cgit.cgi/cgit.css
の代わりに.htaccess ファイルを検索するため、製品パスの .htaccess ファイルは機能しません。https://mydomain.tld/g/cgit.css
私は、この [1] または [2] のように推奨される Rewrite パターンをたくさん試しました。私はより高度な .htaccess ルールに比較的慣れていないのでcgit.cgi
、mod-rewriteを使用して URL から削除し、同じディレクトリ内の css および png ファイルにアクセスでき、 QSA/クエリ文字列が適切に処理されるようにする方法を誰かが指摘できます。長い投稿で申し訳ありません。これについての明らかなハウツーが私にとってうまくいかなかった理由を、より詳細に説明すると思いました。
[1] .htaccess を含む URL から「index.php」を削除します
[2] htaccess は URL からサブディレクトリを削除します
更新:
どちらの回答も良いようですが、仮想ルートとスキャン パスの機能を理解していないと思いますが、これらの回答は以前よりも進んでいるように見えますが、重要な部分がまだ欠けています。(はるかに削除されたパスにある) リポジトリへの URL が$HOME/data/scm/priv
適切にリダイレクトされず、404 が表示されます。
無実の人を保護するために名前/IPが変更されましたが、要点はわかります. レポ リクエストは cgit CGI に戻らないようですが、どこに行くのでしょうか? より良いリダイレクトログを取得しようと取り組んでいます。我々は見るであろう。
更新 2:
そしてもちろん、私が忘れていRewriteLog
たので、あなたが入れることができないディレクティブです、ばかげた私。.htaccess
共有ホスティングで今何をすべきかわからない. なんて不愉快だ。これは、私が VPS ホスティングを検討し、お金の弾丸を噛み、この共有ホストを本当にばかげたことだけに使用するように促したいくつかの問題の 1 つです。
PS:元の問題をそのまま cgit dev リストに電子メールで送信しましたが、これについても応答がありませんでした。だから彼らは気にもかけず、馬鹿げた質問だと感じています。ハハ。
osx-snow-leopard - MacPorts: cgit のインストールが「ファイルのチェックサムを検証できません」で失敗する
cgit を MacPorts でインストールしてみた
しかし、それは失敗します:
Snow Leopard、Mac OS X 10.6.8 (10K549)、カーネル バージョン: Darwin 10.8.0 64 ビットを実行しています。
すでにいくつかのオンライン検索を行い、正常にポートを更新しました
しかし、それは問題を解決しませんでした。
また、MacPorts (ここでは Linux のバックグラウンドを持つ Mac 初心者) でバグレポートを提出する必要があるかどうかもわからないので、代わりに最初のスタックオーバーフローの質問にこの機会を利用しました ;)
助けていただければ幸いです。
アレックス
git - cgitはコンパイルされたバージョンを個別に実行しますか?
cgitドキュメントは、cgitがgitをそれ自体にもコンパイルすることを示しています。
そのgitバージョンはサーバー全体で使用されていますか、それともgitリポジトリを解析するためにのみcgitによって内部的に使用されていますか?
url-rewriting - このcgitインスタンス(共有ホスティング上)にはどの書き換えルールが必要ですか?
共有ホスティングにcgitをインストールしました。ホームページは表示されますが、パスの先頭にcgit.cgiを追加するまで、すべてのURLにファイルが見つかりません。
たとえばwww.domain.com/path
、ブラウザに「」と入力しない限りエラーが発生www.domain.com/cgit.cgi/path
しますが、返されたページのすべてのリンクはの形式www.domain.com/path
です。
www.domain.con/path
Webサーバーがのすべてのインスタンスをとして処理する原因となる.htaccessの書き換えルールはありますwww.domain.com/cgit.cgi/path
か?DrupalのクリーンURLが思い浮かびます。
git - gitwebクエリ文字列をcgitクエリに変換する
プログラムでgitweb形式のクエリ文字列をcgitクエリ文字列にマッピングして、ウェブのあちこちに散らばっているリポジトリを指す古いgitwebベースのURLを壊さずに、完全にcgitに移行しようとしています。次のような正規表現ベースのURL書き換えルールを見てきました。
http://www.clearchain.com/blog/posts/cgit-upgrade-gitweb-retired
しかし、私はクエリ文字列の変数を実際に理解して正しく理解しようとしています。mod_rewriteなどの再マッピングではなく、小さなCGIプログラムを使用します。特に、、、、およびハッシュのセマンティクスとh
、それらがさまざまなタイプのクエリのcgitのクエリ変数にどのようにマップされるかを理解していません。hb
hp
id
それらに精通している人は私に記入したり、良いリソースを教えてくれますか?