4

会社のサーバーがあります。このサーバーには gitがインストールされ ていません (近い将来にはインストールされません)。(多くの無料サーバー ホスティング サイトでは、git もインストールされていません)

git をインストールせずに git バイナリを使用する方法はありますか (したがって、別のフォルダー、スタンドアロンに必要な依存関係はありません)。

別のサーバーは私にとって選択肢ではありません。

もちろん、任意のフォルダーで動作するgitバイナリが必要なWeb gitリポジトリビューアー用のgitが必要です。統合されたgitバイナリを備えたWeb gitリポジトリビューアーがあるかもしれません。


私は試した:

サーバーOSはLinux 64ビットです。git バイナリをローカル Linux からサーバー上の実行可能パスにコピーしました。それは動かなかった。だから私は依存関係を調べます。これらのライブラリが必要です:

  • libz.so.1
  • libresolv.so.2
  • libpthread.so.0
  • libpcre.so.3
  • libc.so.6

これらは、次の名前のライブラリへのリンクのみです。

  • libz.so.1.2.7
  • libresolv-2.17.so
  • libpthread-2.17.so
  • libpcre.so.3.13.1
  • libc-2.17.so

そこで、ライブラリの名前を変更し、それらを git バイナリがあるサーバーにコピーしました。しかし、残念ながら、git バイナリは、同じフォルダーではなく、ライブラリの /lib/linux-64-gnu... os フォルダーを検索します。次に何を試せばいいのかわからない。

4

1 に答える 1

1

これが私の解決策です:

  1. スタンドアロンの git バイナリをコピーしたいサーバーと同じアーキテクチャの Windows PC に Ubuntu 13 をダウンロードしてインストールしました。アーキテクチャは 64 ビットを表す x86_64 です。ダウンロードリンクはhttp://www.ubuntu.com/download/desktopです
  2. CDから起動してディスクに焼き付けました。次に、ユーザー名は「Ubuntu」でしたが、別のユーザー名が必要だったので、USB スティック 32GB に Ubuntu をインストールしました。
  3. git tarball ファイル「git-1.7.3.tar.bz2」をダウンロードし、「cd ~/Downloads」コマンドを使用した後、ターミナルで「tar -jxvf git-1.7.3.tar.bz2」コマンドで展開しました。ダウンロードした tarball git ファイルがあるディレクトリに移動します。ダウンロードリンクは code.google.com/p/kakola/downloads/detail?name=git-1.7.3.5.tar.bz2&can=2&q= です (グーグルで「git .tar.bz2」で見つけました)
  4. .tar.bz2 ファイルの横にディレクトリがあるので、'cd git-1.7.3.5' でそこに移動します。
  5. 「sudo apt-get install libexpat1-dev asciidoc libz-dev gettext curl」で役立つ他のWebサイトから言及されたすべてのコマンドをインストールしたことを確認するためだけに
  6. サーバー上のビンがあるはずのパスにディレクトリを作成しました。ホームアクセスしかないため、「mkdir /home/git」を使用してホームフォルダーにある必要があります
  7. 次に、コマンド「./configure --prefix=/home/git/BIN CFLAGS="${CFLAGS} -static" NO_OPENSSL=1 NO_CURL=1」を使用して、抽出したフォルダーに構成ファイル「config.mak」を入力しました。 .autogen'
  8. その後、'make' と 'make doc' を作成してファイルを作成し、'install' と 'make install-doc' を作成し、必要なディレクトリをこれらすべてのファイルで埋めた git バイナリ (スティック上でかなり大きい 364MB) )
  9. Gitlist をダウンロードしてサーバーにアップロードし、作成されたフォルダー全体とそのすべてのバイナリを gitlist フォルダーにアップロードしました。
  10. config.ini を Gitlist から変更して、一部の PATH の代わりに git のスタンドアロン バイナリを使用するようにしました (プロジェクト パスも変更しました)。

Gitlist はリポジトリを検索し、リスト ビューに表示します

(GitWebだとエラー出たけどGitListは大丈夫みたい)

于 2013-05-02T19:04:14.577 に答える