2009-05-01 19 views
4

私は現在、Subversionリポジトリを「使用」しているチームで働いています。実際にはみんながsamba共有を使ってサーバー上で直接ファイルを編集しているのだから、私たちのアーキテクトは変更を加えてそのサーバーからコミットを行い、その後サーバーにプッシュします。SVNから...に移動しますか?

基本的に私たちは、さまざまなユーザーからの有意義なコミットメッセージを得ることができ、私たちが好きなだけ頻繁にコミットすることができます。

私は、分散システムに関する関心を呼び起こそうとしてきました。私たちのワークフローは、gitのようなもので非常にうまくセットアップできました(私たちはローカルマシンでコミットし、私はgitで十分な経験があるとは思わない。私のDVCSの経験のほとんどは水銀で行われてきました。

誰もがtortoisesvnを使ってWindows環境で作業していますが、これはシステムとのやり取りに慣れている方法ですが、PuTTYを使用してLinuxサーバーの1つで作業することがあります。コマンドラインコミット。

これと一緒に行く方法は何ですか、私はSVNといくつかのDVCS間のゲートウェイを作成するために行われている作業のいくつかを見てきましたが、誰もそのような環境で設定し作業していますか?

SVNからDVCSへの本格的な移行はどうですか?

+13

なぜ建築家だけがコミットするのですか?私はあなたの問題があなたのバージョン管理システムだとは思わない。 – Min

+5

えええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええさんソースコントロールを独占しようとしている人は1人だけです。 –

答えて

20

あなたのチームがどのようにSubversionの使い方を理解できないのであれば、どうやってgitを理解できるようになるのか分かりません。特に、「すべて同じ作業コピーで作業できる」という考え方に基づいているため、分散型のバージョン管理システムを習得するのは苦労します。

私の経験上、svn-gitを使うには、gitの使い方を知っていて、svnの使い方を知っていなければなりません。私はそれらを正しくsvnを使用するように教えることをお勧めしたいと思います。

+4

+1の現実チェック! –

+1

+1:確かに! ;-)ツールを備えたばかはまだまだ馬鹿だ –

+0

優れた点。クロール、歩く、走る。 – paxos1977

11

あなたのSVNリポジトリを保持し、SVNを使用する方法で使用したくない理由はありますか?

なぜ誰もがチェックインしてマージするのではなく、ブランチなどを使うのはなぜですか?リポジトリを設定している場合はなぜ切り替えるのですか?

+1

architect-guyは、私たちがリポジトリにチェックインすることを望んでいません。なぜなら、彼らは主に物を配備する手段としてそれを使用しているからです。どういうわけか私はコミットの方法を持っていたいが、彼は自分のリポジトリにはいられない。 – xkcd150

+4

@ xkcd150:デプロイメント用にブランチを使用することを推奨します。これは、最初はリポジトリを持つことの美しさです。つまり、ブランチやタグはデプロイメントの状況に適しており、コードは単一の一貫した場所に保存されます。同様の問題はソースコントロールで発生します。ソースコントロールを悪用する代わりに、ソースコントロールを受け入れて利用するようにすることが重要です。 SVN Externalsを使ってリポジトリを別々の無関係のセクションに分割することもできます。これは建築家にtortoisesvnであるべき「安全」 –

6

あなたが記述している問題は、主にコードをコミットするための適切な手順とプロトコルと関係しているようです。差別化された製品を手に入れても、人々の働き方は変わりません。まずそれらを教育する必要があります。物事をより良くする方法を示してください。

違う点では、SVNとのインターフェイスにtortoiceCVSをどのように使うのか分かりませんでした。

+0

のタイプミスを提供する方法かもしれません:O – xkcd150

+0

私はそれらのやり方を示したいと思います。私はもっ​​と尋ねるべきだと思う。仕事のためのツールをgitですか?水銀? svn + svn-git + git?または..? – xkcd150

+2

ジョブの正しいツール、誰もがすでにtortoiseSVNを使用している場合、SVNです。 – Jimmy

1

gitとbazaarの両方がsvnを良好にサポートしています。 infact git-svnはここ数ヶ月でかなり成熟しました。

gitを試してみてください.DVCSは本当にうれしくて、あなたのように聞こえるのは難しいです。

3

git-svnは、です。確かにここで最良のベットです。 gitのすべてのローカルバージョンコントロールと変更レビュー機能を使用することができますが、最終的には "final"チェックインを既存のsvnリポジトリにプッシュアップすることができます。

あなたが購入する前に試すことができるので、これはあなたのチームは時間(の両方で少しのgitと自分の足が濡れてみましょうすることができるという素晴らしい副作用を持っており、あなたはまだ、既存の展開を使用することができますので、 /あなたがSVNを使用して開発したメンテナンスプロセス)。

crash-course on git syntax for svn usersもあり、チームのスピードを上げることができます。

+0

サイドノート:トップOSS DVCSの "big three"はSubversion、MercurialとBazaar(git-svnのGitだけでなく)との相互作用のための同様のサポートを持っています。 –

2

hgもサブバージョンではうまくいきます。https://www.mercurial-scm.org/wiki/WorkingWithSubversionを参照してください。Pythonのコア開発チームはSubversionからMercurialに切り替えることを決めました(長い話し合いの後に、&のgitとbazaarも考慮されていました)。関連のない開発では、code.google.comのオープンソースプロジェクト用無料ホスティングサービスは、svnの長年のサポートに対するhgサポートを追加しました。

4

私には、バージョンコントロールシステムの選択のように聞こえるのは問題ではありません。あなたがする必要があるのは、建築家が改訂管理システムを使用するためのいくつかの理想的なポリシーを策定する必要があることを説得することです。

あなたの現在のsvnシステムは完全に適切です。トランクをきれいに保つ必要がある場合は、ユーザーがブランチを作成できるようにします。建築家は必要なときにそれらをマージすることができます。

ここで、にDVCSを移動させる可能性があります。そのような理由があります。しかし、チームがクライアント/サーバrcsの使用に慣れていない場合、これは困難になるかもしれません。そしてあなたをgitまたはhgをローカルで使うことができますが、根本的に壊れたrcsの使用法に対する回避策です。誰もがsvnを使うことを最初に私の提案にする。

samba共有のファイルを編集しますか?真剣に!

3

あなたの問題はSVN自体ではなく、正しく使用されていません。スティーブ・イェジとして

+0

彼はネットワーク共有からSVNへの本格的な移行が必要です! – richq

3

は言うかもしれない:TOOOOOLS

を他の人が言うように、あなたは彼らがSVNを使用して取得できない場合、彼らは、分散VCSを使用しません。

これらはIDEを使用していますか?その場合は、svnを使いやすくするIDE用のプラグインを見つけてください。したがって、IDE内のファイルやフォルダを右クリックしてチェックインすることができます。ソースファイルをローカルのコピーで簡単に使用して、中央のファイルに直接アクセスするよりも、チャンスがあります。その後、より複雑なタスクにTortoiseSVNを使用することができます。

あなたが始めるために人気のIDEのためのSVNプラグインへのリンク:

そして、 Subversionのウェブサイトのhere is a list of IDE plugins

+0

悲しいかな、結局のところ問題はツールではないようです。 問題は、svn _that way_を使用しないことです。 – xkcd150

関連する問題