37

svn と Trac から git と Redmine に移行することを検討しています。みんなの経験はこれについてどうなのかと思っています。git は Redmine とどの程度うまく統合できますか?

私は svn から git に変更するという私の決定にかなり固執しています - 私たちの分散作業は、頻繁に分岐してマージする必要があるため、git を使用すると生活がかなり楽になります。しかし、これを行うには、物事を複数のプロジェクトに分割する必要があるかもしれません。私が読んだことによると、git と複数のプロジェクトは Trac とあまりスムーズに統合されません。それはさておき、私の git の調査では、Redmine も私の注意を引いており、いくつかの機能は非常に便利に見えます。

ただし、git と Redmine のユーザー エクスペリエンスは、私が望むほど多くは見つかりませんでした (検索スキルが不足しているためか...)。

4

6 に答える 6

30

昨年、 Gitoriousと Redmineを使ったシステムを構築しました。git を Redmine と直接統合できますが、問題はありませんが、Gitorious と、リポジトリを制御してイベントを追跡するためのツールを確認することを強くお勧めします。また、リポジトリなどへのアクセスを制御するためにも使用できます。

Gitorious と Redmine の統合は非常に簡単です。Gitorious パスのハッシュを解除するスクリプトを作成しました。これらは、Gitorious を使用するときにハッシュされたファイル システムに保存されるため、それらのリポジトリを Redmine にリンクするのは少し複雑です。私のスクリプトは、これらのリポジトリへのリンクをはるかに読みやすい形式で作成するため、それらを Redmine にリンクするのは非常に簡単で、プロジェクトを作成するときに一度だけ必要です。スクリプトはこちらにあります

基本的に、Redmine は git out-of-box をサポートしているので、統合についてあまり心配する必要はありません。もちろん、「本番」リポジトリ(Redmineにリンクしたり、自動テストを実行したりするもの)があるサーバーでgitサービスを実行する必要がありますが、これもGitoriousで解決されます。

私は実際にこの問題について学士論文を書きました。Gitorious と Redmine の両方がかなり開発されているため、既に少し古くなっていますが、読みたい場合は公開できます。この論文では、何をする必要があるかを説明しており (問題の一部は 2 つのツールによって既に解決されています)、ユーザーが変更をリポジトリにプッシュし、テスターが作業する reprepro リポジトリにそれらを配置すると、パッケージを自動的にビルドする継続的統合環境も含まれています。などは、Web ブラウザで簡単にダウンロードできます。

昨年、Redmine にはいくつかの問題がありました。特にサブプロジェクトの欠如は少し厄介でしたが、0.9 バージョンで修正されました。また、プラグインは、本番環境で使用する前に十分にテストする必要があります。うまく混合できないものもあれば、まったく機能しないものもあります (おそらく、Redmine バージョンとプラグイン バージョンの衝突)。全体として、Redmine は非常にうまく機能し、ニーズに合わせて簡単に拡張できるはずです。Gitorious のサポートは素晴らしく、Redmine はもう少し散発的ですが (気の毒なフランス語?)、どちらのツールも十分に大きなユーザー ベースを持っているため、安全に使用できます。

Git は、特にアジャイル チームにとって非常に優れたバージョン管理ツールです。ある程度の学習が必要であり、開発者が最大限に活用できるように使用方法に関するガイドを作成する必要がありますが、一度学習すると、非常に生産的になります。通常の作業プロセスを記載したものを独自に作成しました。分岐、マージなどについて説明する必要があります。たとえば、個人リポジトリのマスター ブランチで作業することはあまり良い考えではありません。常にブランチを作成し、そこで作業してください。他のリポジトリからマスター ブランチに変更をプルする場合、この方法でマージを処理する方が簡単です。意図しないものを誤ってプッシュすることはありません。

于 2010-05-09T14:13:06.883 に答える
8

こんにちは、私はしばらく前にこのガイドを書きました。このガイドでは、クリーンな git とクリーンな redmine をインストールします。他の追加ソフトウェアは必要ありません。http git を使用して redmine 内でアカウントを処理することもできます。

ここで見つけることができます: http://codersopinion.com/blog/install-redmine-with-automated-git-on-centos-redhat/

このガイドを書いたのは少し前なので、バージョンが一致しない可能性がありますが、現在のバージョンで動作するはずです。

于 2012-07-02T11:58:03.540 に答える
1

Redmine と Gitorious を適切に統合する方法を検索しているときに、このスレッドに出くわしました。私たちはこれを達成することができたので、長期 (または中期) の経験ができたので、それを共有したいと思います。

cron ジョブは柔軟性に欠けていたので、cronjobs とは異なるアプローチを採用しました。Redmine と Gitorious のインストール部分については、ブログ投稿で他のチュートリアルも参照しています。

http://codepool.at/blog/archives/12

現在、このシステムを約 5 か月使用していますが、非常に満足しています。唯一の「問題」は、Redmine で新しいプロジェクトを作成するたびに、プロジェクトをリポジトリに接続できるようにターミナル コマンドを実行する必要があることです。プロジェクトをまとめて作成するわけではないので、これは私たちにとってちょうどいいアプローチです。

これが役立つことを願っています!

于 2012-10-19T06:05:51.580 に答える
1

私は自分の git+redmine セットアップに満足しています (そしてリポジトリ管理に gitolite を使用しています)。両方のツールの使用を活用するために使用する python フックを次に示します。

序文: rest.botユーザーのセットアップ

フック操作は、rest.botユーザーとして認証されて実行されます。
Redmine 管理コンソールに移動し、このrest.botユーザーを作成します。
[ロールと権限]ページで、 [課題の表示] と [課題編集]のみの権限を持つRest ボットグループを 作成します。[ワークフロー]ページ で、この役割の承認済みステータス遷移を構成することを忘れないでください。ロールRest botが割り当てられたプロジェクトにrest.botユーザーを 追加します。

クライアントcommit-msgフック: 発行番号を発行タイトルに展開します

https://gist.github.com/KraYmer/4443858<git dir>/share/git-core/templates/hooksを編集してクライアント マシンにコピーする

このフックを使用すると、課題番号を入力し、課題の件名を追加して自動的に展開するだけで、git コミット メッセージで Redmine 課題を参照できます。

'working on ref #1234' => 'working on ref #1234:Eliminate dangling pointers'

サーバーpost-receiveフック: git commit メッセージを解析して問題のステータスを変更します

https://gist.github.com/KraYmer/5292077.gitolite/common/hooksサーバー上のディレクトリに編集してコピーする

コミット メッセージで課題を参照することは、デフォルトの Redmine に同梱されている機能ですが、単に参照 (ステータスは変更されません) または課題をクローズすることに限定されます。
このフックは、認識されている一連のキーワードを拡張して、コミットの問題のステータスを変更することを目的としています。

$ git push
...
remote: [post-receive] Parsing 1 commits for branch 'develop'
remote: [post-receive] Setting issue #1608 status to 'totest'
...

フックは、コミットが完了するとすぐに変更を取得するため、変更は Web サイトにリアルタイムで反映されます。

于 2013-04-02T13:07:34.977 に答える
1

考慮すべきもう 1 つのことは、アクセス制御です。redmine を介してさまざまなプロジェクトへのコミット アクセスを制御できるようにしたい場合は、これが役立ちます。

http://wiki.bitnami.org/Applications/BitNami_Redmine_Stack#How_to_configure_Redmine_for_advanced_integration_with_Git

redmine アカウントと Gitorious をどのようにリンクするかはわかりませんが、それも可能かもしれません。

于 2013-01-03T18:24:02.377 に答える