17

ばかげた質問のように聞こえるかもしれませんが、私は一生、この質問に対する答えを見つけることができません.

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

問題は、オプションがグレー表示されていて、変更できないことです。「削除」をクリックして新しいものを作成できると思いますが、そのオプションを試すのは本当に恐ろしく聞こえます (URL には /destroy/ という単語が含まれています!!) リポジトリを一掃したくありません。Redmine のマニュアルには、これに関する参考文献はありません。私は何をすべきか?

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

4

6 に答える 6

29

わかりました。テストするダミーの svn リポジトリを使用してダミーのプロジェクトを作成し、最後にその恐ろしい「削除」リンクをクリックしました。リポジトリ自体ではなく、リポジトリへの参照のみを削除することがわかりました。

確かにばかげた質問でしたが、これは Redmine のマニュアルに記載する必要があります :)

于 2009-04-13T14:48:26.040 に答える
8

もう 1 つのオプションは、' repository ' テーブルの値を変更することです。リポジトリの再配置の場合はかなりうまく機能します。

于 2009-08-27T11:10:56.337 に答える
3

別のオプションは、「リポジトリ」テーブルの値を変更することです。リポジトリの再配置の場合はかなりうまく機能します。

それらがまったく同じであることが確実にわかっていない限り、これはお勧めしません。


PSこの質問がどれだけ古いか気づきましたが、それでも関連性があると思います。

于 2010-05-13T16:44:05.967 に答える
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';
于 2013-07-24T12:07:12.173 に答える
2

確かに、私は同じばかげた質問に困惑しました。ありがとう。ただし、redmine の各コミットへの参照を含むデータベース情報が削除され、再作成されているようです。リポジトリが大きい場合、これには長い時間がかかることがあります。(Linux カーネルのように)

于 2009-05-06T09:41:35.570 に答える
0

redmine でのリポジトリの削除には十分注意してください。物理リポジトリは削除されませんが、Issue へのリンクなど、リポジトリの redmine ストアがすべて削除されます。一部は手動で作成され、私の場合、一部のリンクはコミットコメントの別のパターンを使用してずっと前に作成されているため、これらは(再配置されたリポジトリからのインポートによって)復元できないことがよくあります。

リンク データを失わずにリポジトリを再配置する唯一の方法は、URL をデータベースで直接更新することです (設定ページでは読み取り専用です)。たとえば、 dotancohen によって提案されているように

UPDATE repositories SET url='newurl', root_url='newurlroot' WHERE url='oldurl';
于 2015-02-26T10:59:12.513 に答える