問題タブ [gitosis]
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 - GIT、GITOSIS、WEBSITE - パス
Ubuntu サーバーがあり、git と gitosis をインストールしました。サーバー管理は初めてで、次の gitosis フォルダー ツリーがあります。/home/git/repositories
gitosis-admin.git をローカル マシンに複製し、gitosis.conf
ユーザーの公開鍵を編集して keydir に追加し、それをサーバーにプッシュして、さまざまなリポジトリに対するユーザーの権利を編集しました。これは、さまざまなリポジトリと作品でテストされています。
gitosis を使用して、Web ドメイン内のフォルダーのソース管理に使用できるリポジトリを作成する方法を説明するチュートリアルに、私は本当に混乱しています。
SSH Putty を使用して web フォルダーにベア リポジトリを作成しました。ファイルを追加してコミットしました。次に、それをローカルマシンに複製しました
これは成功しました。
問題は、サーバーにプッシュバックしようとすると、リポジトリが /home/git/repositories パスに作成され、Web フォルダーのリポジトリが影響を受けないことです。
次の情報を組み合わせてみました。
http://scie.nti.st/2007/11/14/hosting-git-repositories-the-easy-and-secure-way
http://urbanpuddle.com/articles/2008/07/11/installing-git-on-a-server-ubuntu-or-debian
http://danielmiessler.com/blog/using-git-to-maintain-your-website
git - Cygwin/Git/Gitosis が新しいリポジトリをプッシュできない
最近、Windows Server 2003 ボックスで cygwin、git、および gitosis をセットアップしましたが、問題が発生しています。見つけることができるほぼすべてのチュートリアルに従い、gitosis-admin リポジトリをプッシュすると、git アカウントの authorized_keys テーブルが更新されることを確認しました。ただし、新しいリポジトリの作成に関しては、行き詰まっているようです。
git bash と Windows コマンド ラインの両方で試した、次のコード (明らかにリポジトリ名の変更) を推奨する多くのチュートリアルを見てきました。
最後の行を実行すると (何を送信しても)、「リモート エンドが予期せずハングアップしました」と表示されます: $ git push -v origin master:refs/heads/master Pushing to git@my_server:free_monkey.git fatal:リモート エンドが予期せず電話を切った
私の gitosis.conf ファイルは次のようになります。
これをデバッグするために必要な情報が不足している場合はお知らせください。ありがとうございました!
私に関係するもう1つのこと:
それが問題なのでしょうか?もしそうなら、どうすれば修正できますか?
git - ユーザーごとのリポジトリのGitosisディレクトリ?
ユーザーが必要な数のリポジトリをプッシュできる独自のディレクトリを持ち、基本的にそのディレクトリに管理者特権を持つように gitosis をセットアップする方法はありますか? これはややこしいかもしれませんが、本質的には、git@github.com:username/repofoo.git のような URL で github ですべてのリポジトリにアクセスできるようにする方法が必要です。
各レポのセットアップは、スクリプトを介して自動化できるやや手動のプロセスであることがわかりました.githubがそうしていると思いますが、自動化されたリポジトリの作成を除いて、全体的にこのようなことを行う方法はありますか? 可能であれば、gitorious などをセットアップしようとしても構わないと思いますが、gitosis は今の私にとってはかなりうまく機能しており、セットアップは非常に簡単でした。gitorious はそれほど簡単ではないと聞いたことがあります。ありがとう!
gitolite のようなブランチごとのパーミッションを持つ gitosis の他のフォーク/クローンについて聞いたことがありますが、他の魅力的な機能がなく、gitosis と同様に文書化されていて使いやすい場合を除き、それらのいずれかを使用するかどうかはわかりません.
git - gitosis は projects.list を自動的に生成しませんでした。gitweb は機能しません。
gitosis
マネージドgitサーバーをセットアップしました。
git clone
大丈夫です。
しかし、次のように設定gitweb
するgitweb.conf
と:
ところで、特別な記号 # が太字の接頭辞として使用されているため、commet は削除されました。
「 http://localhost/cgi-bin/gitweb.cgi」403 Forbidden - No projects found
から gitweb にアクセスすると、「 」が報告されます。
projects.list ファイルが空であることを確認しました。それが gitweb アクセスに失敗した理由ですか? 正しい内容は何でしょう?手動で追加できますか?
git - git 警告: リモート HEAD が存在しない参照を参照しているため、チェックアウトできません
hereの指示に従って gitosis をセットアップしようとしています。
リモートマシンからは正常に動作するため、サーバーは正常にセットアップされているようですが、別のユーザーアカウント (gitosis セットアップで作成された git ユーザーではありません) から gitosis サーバーマシンで開発を実行できるようにしたいと考えています。
キーをコピーし、他のユーザー アカウントがアクセスできるように gitosis.conf を変更しましたが、クローンを作成しようとすると、最後に次のように表示される以外は機能しているようです。
そして、.gitを除いて空のディレクトリになってしまいます
私はこれについて少しグーグルで調べましたが、問題が何であるかについての本当の洞察はありません
windows - Windows からローカルの git リポジトリにアクセスする
ローカルのubuntuサーバーにgitリポジトリ(gitosisを利用)があります
Windows XP (msysgit) を搭載した他のローカル コンピューターからアクセスしたい
WindowsマシンでRSAキーを生成し、ubuntuサーバーに公開しました
Windowsマシンでこのキーを使用するように設定された.ssh/configファイルがあります
私がする時
ssh git@192.168.0.6
これは、パスワードプロンプトなしで、必要に応じて機能します
ただし、リポジトリをクローンしようとすると:
git クローン git@192.168.0.6:gitosis-admin
また
git クローン ssh://192.168.0.6/~/gitosis-admin
その後、次のエラーが発生しました:
致命的: 'gitosis-admin' は git リポジトリではないようです
アトムという名前のユーザーなど、既存のユーザーアカウントでクローンを作成しようとすると
git clone atom@192.168.0.6:gitosis-admin
これは希望どおりに機能しますが、他のレポプロジェクトでは機能しません
私のgitosis.conf:
【ギトシス】
[グループ gitosis-admin]
書き込み可能 = gitosis-admin
メンバー = windows_user atom@atom-desktop
【グループチーム】
書き込み可能 = another_project
メンバー = @all
私の質問は、「問題はどこにあるのか?」です。gitdaemon の設定を変更する必要がありますか?
linux - ubuntuのpost-receiveフック内のgit autodeployスクリプト
gitosis の「post-receive」フックで更新されたリポジトリを /tmp に取得する autodeploy bash スクリプトがあります。
#!/ビン/バッシュ
PWD=$PWD
REPO_NAME=${PWD##/*/}
cd/tmp
git クローン git@atom-desktop:$REPO_NAME
しかし、リポジトリをプッシュすると、次のようなエラーが発生しました。
ホスト キーの検証に失敗しました。
致命的: リモート エンドが予期せずハングアップしました エラー: hooks/post-receive がエラー コード 128 で終了しました
それに対処する方法は?
git - svnserve -r と同等の git-shell?
私と友人の両方がアクセスできる共有ホスティング アカウントに git リポジトリを設定しようとしています。~/.ssh/authorized_keys に次の行を追加することで、Subversion リポジトリでこれを行うことができました。
git-shell が git の svnserve に相当するものであることはわかっていますが、特定のパスへのアクセスを制限する -r オプションに相当するものはないようです。友人にアクセスさせたくない他の git リポジトリがあるため、これは問題です。
私が望んでいることを実行できると思われる gitosis について簡単に読んだことがありますが、この特定の要件を達成するために別のソフトウェアをセットアップする前に、より簡単な解決策があるかどうかを確認したいと思います。前もって感謝します!
編集:それを行うためのスクリプトを提供するこの記事を見つけました:
http://eagain.net/blog/2007/03/22/howto-host-git.html
しかし実際には、後に gitosis を書いたのと同じ人によって書かれ、古いものとしてマークされています。また、共有ホスティング アカウントではできない専用の UNIX ユーザーを作成する必要があるため、私の状況では gitosis は不可能なようです。ただし、これを誤解している場合は、間違っていることが証明されたいと思います!
git - Hudsongitはマスターにマージされません
ハドソンが自分のgitリポジトリをチェックアウトしてマスターにマージするのに問題があります。私はGitにかなり慣れていないので、用語(参照など)はまだ私にとってまったく新しいものです。以下にハドソンコンソールからの出力を含めました。
私が起こっていると思うのは、ハドソンがリモートのマスターブランチをチェックアウトしているが、それを自身のマスターにマージしていないということです。サーバーにSSHで接続し、ワークスペースに移動しgit branch
て現在のブランチを入力する* (no branch)
と、その「ブランチなし」のログが最新になります。
マスターブランチをチェックアウトすると、Your branch is behind the tracked remote branch 'origin/master' by x commits
明らかにマスターにマージされていません。これはどのように機能しますか、どのように「ブランチなし」にマージできますか?
gitの設定を以下に示します。ハドソンをマスターブランチ(またはそのことについて指定したブランチ)にマージするために何をする必要があるかわからない私は最終的にステージングとプロダクションブランチを持つように設定するので、それがプルすることを確認する必要があります適切なブランチをマージして、デプロイを実行できるようにします。私が見つけたいくつかのチュートリアルからそれらのハドソン設定を取得したので、私はすべてを完全に理解していません。たとえば、構築するブランチが単なるマスターではなく* / masterである理由(マスターだけに変更しても違いはないようです)
ヒントは大歓迎です!!
HudsonGit設定
リポジトリのURL:リポジトリ/home/git/repositories/my_repo.git
の名前:origin
Refspec:+refs/heads/*:refs/remotes/origin/*
構築するブランチ:*/master
HudsonGitコンソールログ
バージョン
Hudson:1.337
Git:1.5.6.5
Hudson Gitプラグイン:0.7.3
Linux:Debian Lenny 5.0.3
http-authentication - LDAP認証なしでGitosisでGitwebを認証しますか?
gitweb、gitosis で Apache Auth を使用している記事を見つけました。
認証にLDAPを使用していない場合、これを行う方法があるかどうか疑問に思っていました. 現在、すべての UNIX サーバーで認証に使用する非常に大きな NIS ドメインがあります。UI を介して SVN リポジトリにこれを使用しますが、この場合、次の要件を満たすようにしています。
- Git リポジトリ
- アクセス制御 - Gitolite を使用
- オンライン UI - Gitweb を使用
- UI にはアクセス制御も必要 - まだ実装されていません
最初に、Gitweb と Gitolite を一緒にプレイする必要があると考えていましたが、現時点ではそれぞれが個別に動作します。
gitolite が SSH キーを使用してアクセスを提供する場合、ユーザー/開発者が Gitweb/gitolite にアクセスするマシンごとにキーを持つことで、この方法でアクセスを提供できます。
または、すべてのユーザーが IT 部門が設定したアカウントを持っているため、gitweb で NIS ドメインからのユーザーを簡単に認証できる場合は、これがより良いでしょう。
この要件をさらに進めるために使用できるアイデアやハウツーはありますか?