任务单 #33154

svn のフック (hook) の設定方法が見つかりません。

开放日期: 2014-02-11 23:19 最后更新: 2014-02-25 23:20

报告人:
属主:
状态:
关闭
里程碑:
(无)
优先:
5 - Medium
严重性:
5 - Medium
处理结果:
文件:

Details

svn で sourceforge.net 上のボクのプロジェクトを sourceforge.jp 上ミラーしたいのですが、 svnsync を使用するには start-commit 及び pre-revprop-change のフックを使う必要あるそうです。

( http://svnbook.red-bean.com/en/1.7/svn.reposadmin.maint.html#svn.reposadmin.maint.replication による。)

フックは REPOS_PATH/hooks/ の下に置かれるそうです。

( http://svnbook.red-bean.com/en/1.8/svn.ref.reposhooks.html による。 )

svn の新人でありながら、もしかして svn のコマンドでフックの設置が出きるかなと思うこともありますが、レッドブックに、そういう情報が簡単にでなかった。そして、 sourceforge.jp のヘルプなどに関連の情報が見当たりません。シェルでログインしてもリポジトリにアクセスがなさそうです。

フックの設置できない場合は手動元のリポしトリを再生することも考えれるけど、考えたくないのですね。とりあえず、方法があれば教えてください。

任务单历史 (3/8 Histories)

2014-02-11 23:19 Updated by: reiisi
  • New Ticket "svn のフック (hook) の設定方法が見つかりません。" created
2014-02-14 11:46 Updated by: sugi
评论

返答遅くなって済みません。

今のところ、SourceForge.JP では post-commit に相当する webhook しか設定 UI がありません。

これ以外の hook が必要であれば、チケットからリクエストしていただければ、管理者側で設定する事ができます。

設定対象のレポジトリをお知らせください。

2014-02-15 12:37 Updated by: reiisi
  • 类型 Update from Support Request to Feature Requests
评论

「チケットからリクエスト」というのは Type を Feature Request に変えていいですか?

プロジェクトは http://sourceforge.jp/projects/bif-c/ の bif-c です。 リポジトリは svn.sourceforge.jp/svnroot/bif-c です。

フックを設定できるためにほしい UI はプロパティの start-commit 及び pre-revprop-change です。

よろしくお願いします。

2014-02-18 12:29 Updated by: sugi
评论

該当レポジトリに start-commit, pre-revprop-change フックを設定致しました。

とくにユーザは限定していないので、プロジェクトに所属するユーザであれば svnsync が実行できるはずです。 お試しください。

2014-02-19 20:25 Updated by: reiisi
  • Details Updated
评论

sugi への返信

該当レポジトリに start-commit, pre-revprop-change フックを設定致しました。

ありがとうございます。ただし、

とくにユーザは限定していないので、プロジェクトに所属するユーザであれば svnsync が実行できるはずです。 お試しください。

Redbook の指定するフックの内容を引用せずにお願いしたのはボクのミスです。指定されているのは以下の通りです


#!/bin/sh

USER="$2"

if [ "$USER" = "syncuser" ]; then exit 0; fi

echo "Only the syncuser user may commit new revisions" >&2 echo "レポジトリの syncuser ユーザのみがコミットによって改訂(更新)を加えることが出来ます。" >&2 exit 1


及び


#!/bin/sh

USER="$3"

if [ "$USER" = "syncuser" ]; then exit 0; fi

# echo "Only the syncuser user may change revision properties" >&2 echo "レポジトリの syncuser ユーザのみが改訂事項の属性を訂正することが出来ます。" >&2 exit 1


http://svnbook.red-bean.com/en/1.7/svn.reposadmin.maint.html#svn.reposadmin.maint.replication による。)

ということを考えたら、このプロジェクトをミラー役に制限する限り、ボクを含めて、人が更新することはないのです。

まあ、やってみて報告させていただきます。またお願いすることになるかもしれませんが

2014-02-19 22:02 Updated by: reiisi
评论

結果は以下の通りでした。


me@host:$ svnsync initialize https://svn.sourceforge.jp/svnroot/bif-c/ https://svn.code.sf.net/p/bif-c/code/ --sync-username reiisi --source-username reiisi WARNING: gnome-keyring:: couldn't connect to: /home/jbox/duty/.cache/keyring-<nantoka>/pkcs11: そのようなファイルやディレクトリはありません 認証領域: <https://svn.sourceforge.jp:443> SourceForge.jp Subversion 'reiisi' のパスワード: リビジョン 0 の属性をコピーしました (属性 svn:sync-* は飛ばしました)。


これぐらいは RedBook の解説通りでした。次に、動機を試みたが


me@host:$ svnsync synchronize https://svn.sourceforge.jp/svnroot/bif-c/ https://svn.code.sf.net/p/bif-c/code/ --sync-username reiisi --source-username reiisi svnsync: より詳しく知りたいときは 'svnsync help' を試してみてください svnsync: 引数をパースする際にエラーが生じました


明日また調べてみます。

2014-02-25 23:19 Updated by: reiisi
评论

svn のクライアントバージョンが 1.6 と言う指摘を svn のメールリストに受けて、

$ svnsync sync https://svn.sourceforge.jp/svnroot/bif-c/ --username reiisi Authentication realm: <https://svn.sourceforge.jp:443> SourceForge.jp Subversion Password for 'reiisi':

でうまく行きました。

ありがとうございます。

2014-02-25 23:20 Updated by: reiisi
  • Ticket Close date is changed to 2014-02-25 23:20
  • 状态 Update from 开启 to 关闭

Attachment File List

No attachments

编辑

You are not logged in. I you are not logged in, your comment will be treated as an anonymous post. » 登录名