2009-07-18 7 views
0

[Unfuddle] [1]と私のローカルサーバとの間で同期を作成しようとしているので、UnfuddleにSVNコミットがあると、ローカルサーバのコードが自動的に更新されます。 Unfuddleはコールバックを提供し、コミットが行われたときにコールバックを取得できます。異なるファイルを更新するユーザ

私のウェブサーバーは「apache」というユーザーとして実行されますが、既存のすべてのファイルは「開発」ユーザーが所有しています。これは私のチームがコードを毎日更新するために使用するftpユーザーです。コールバックが "開発"ユーザとしてファイルを書き込むようにしたいと思います。

これらは、アイブ氏は、それは私がApacheの「sudoの」コマンドを実行しているリラックスしなければならないことを意味として、私はsudoの-u開発を使用するカントこれは仕事

  1. 作るために、これまでに試したものです。
  2. ファイルのパーミッションを777に変更することはできますが、明らかにそうしたいことはありません。

ここで私が考えることができる唯一のオプションは、スタンドアロンのPython HTTP Serverを実行し、それを「開発」ユーザーとして実行し、コールバックURLにすることです。こうすることで、ローカルの作業コピーを「開発」ユーザーとして更新することができます。他の人も以前と同じように使用できます。

これを行う方法は他にありますか?

ありがとうございます!

答えて

1

私は個人的にはPython HTTP Serverのアプローチを使いますが、Apacheに満足すれば、Unfuddle svnからローカルにgetchを実行するスクリプトが実行されると思います。その場合は、別のユーザーとしてスクリプトを実行するmod_suexecを試してください。

0

あなたは2人のユーザーを同じグループに入れ、グループに許可を与えたことはありますか?

+0

私はそれを試みましたが、同期の性質上、777を指定しない限り、svn updateは新しいフォルダを作成しません。 これらのファイルとディレクトリは "開発"によって所有されており、umaskは唯一の方法として私はグループに対して読み書き権限を与えることができますが、 "svn update"を実行する前にスクリプトからumaskを設定することはできません。 – rajasaur

関連する問題