0

ユーザー名 git を作成しました。passwd ファイルは次のとおりです。

git:x:1001:1001:git:/home/git/test.git:/bin/bash

次に、「test.git」という名前の裸のレポを作成しました。フルパスは「/home/git/test.git」です。

以下のようにリモートを追加すると、動作します:

git add remote origin git@abc.com:./

しかし、私は以下がうまくいくのだろうか?git に追加の設定が必要ですか?

git add remote origin git@abc.com
4

1 に答える 1

1

あなたが提案したようにサーバーをセットアップしたい理由は明らかではありません-それは確かに正常ではありません.

bash ユーザーとしての git は安全ではありません

問題の git 構成をそのままにしておくと、git としてアクセスできる人は次のことを行わないという信頼のみに依存しています。

ssh git@abc.com
cd ..
ls -la // have a look
rm -rf test.git // delete git repo
cd / // go have a hack around
etc.

普通にやれよ

git サーバーのセットアップは簡単です。ほとんど些細なことです。

ファイルを更新するpasswdと、次のようになります。

git:x:1001:1001::/home/git:/usr/bin/git-shell

その後、ユーザー git は、git コマンドを実行する以外は何もできません。

そのため、次のようにします。

git add remote origin git@abc.com:test.git
git pull // etc

git shell は安全です

ログイン シェルとして git-shell を使用しているユーザーには、これらのいずれも機能しません。

ssh git@abc.com

git remote add another git@abc.com:another.git
git push another // attempting to create a new repo

etc.

それができる唯一のことは、リモートへの効果的なプルとプッシュです。

于 2012-09-18T11:13:29.007 に答える