2009-04-13 29 views
17

愚かな質問のように聞こえるかもしれませんが、私の人生はこの答えを見つけることができません。Redmineでリポジトリ設定を変更する方法は?

Redmineでプロジェクトをセットアップし、SVNリポジトリにリンクしました。すべてうまくいっていますが、最近はリポジトリの再配置を行いました。新しいレポを指すようにRedmineリポジトリのパス設定を更新する必要がありました。

問題は、オプションがグレー表示されていて、変更できないということです。私はあなたが "削除"をクリックして新しいものを作ることができると思うが、そのオプションは実際には恐ろしいように思える(URLには/ destroy/inという単語がある!!)、私はrepoを消したくない。 Redmineのマニュアルにはこれに関する参考資料はありません。私は何をすべきか?

また、古いコミットのすべてのチケットの参照が正しい場所を指しているかどうかを知っていますか?

答えて

29

わかりました。私はテストするためにダミーのsvnリポジトリを持つダミープロジェクトを作成し、最後にその恐ろしい "削除"リンクをクリックしました。それはリポジトリへの参照だけを削除し、リポジトリ自体は削除しないことが分かります。

は、それは確かにばかな質問だったが、これはRedmineのマニュアル:)確かに、私はちょうど同じ ダム問題で困惑してしまった

+3

により示唆されるように、たとえば、私はあなたがリポジトリを編集することができますが、あなたはそれを保存しようとすると、Redmineのは、リポジトリ情報を変更するために、」あなたを促すメッセージが表示されます、あなたは、既存のことを変更したいですリポジトリのデータはパージされ、再ロードされます[OK] [CANCEL] "または同様のものです。 –

+2

「削除」は総称的な誤称です。彼らはこれを解決する必要があります。 – cmcginty

2

に文書化する必要があります。ありがとう。 しかし、redmineの各コミットへの参照を含むデータベース情報が削除されてから再作成されるように見えます。リポジトリが大きい場合、これには時間がかかることがあります。 (Linuxカーネルのように)

8

もう1つのオプションは、 'レポジトリ'の表の値を変更することです。リポジトリの再配置の場合にはうまくいきます。

+0

どの値を 'リポジトリ'テーブルの 'root_url'列に指定する必要がありますか? redmineストライプのいくつかのInstansesは 'url'カラムから1レベル、いくつかの2レベル、そして私が試した1つのインスタンスは空にします。 – sergtk

3

もう1つのオプションは、 'リポジトリ'テーブルの値を変更することです。リポジトリの再配置の場合にはうまくいきます。

正確に同じものであることがわかっていない限り、これはお勧めできません。


P.S.私はちょうどこの質問がどれほど古いかを認識しましたが、それはまだ関連していると思います。

+0

はい、RedmineはまだTortoiseSVNの隣にある最も便利なツールです:-) – Danita

2

これは、リポジトリの場所を変更するにはRedmineのデータベース上で実行するためにMySQLのクエリは次のとおりです。

UPDATE repositories SET url='/opt/git/NEW_LOCATION.git', root_url='/opt/git/NEW_LOCATION.git' WHERE url='/opt/git/OLD_LOCATION.git'; 
0

はRedmineのリポジトリ内の欠失を有する非常に注意してください。あなたの物理的なリポジトリは削除されませんが、リポジトリのすべてのredmineストアは、問題へのリンクのように削除されます。手動で作成されたものもありますし、私の場合、コミットコメントに別のパターンを使用して作成されたものもありますので、これらはしばしば(再配置されたリポジトリからインポートして)復元できません。

リンクデータを失うことなくリポジトリを再配置する唯一の方法は、データベース内のURLを直接更新することです(設定ページでのみ読み込まれます)。合意dotancohen

UPDATE repositories SET url='newurl', root_url='newurlroot' WHERE url='oldurl'; 
関連する問題