人々は化石DVCSについてどう思いますか?[閉まっている]


124

fossil http://www.fossil-scm.org
私は最近これを見つけて、自分のホームプロジェクトで使用し始めました。他の人がこのVCSについてどう思うか聞きたいです。

私の心に欠けているのはIDEサポートです。うまくいけばそれが来るでしょうが、私はコマンドラインをうまく使います。

化石についての私の好きなもの:Webサーバーwikiとバグ追跡が組み込まれた単一の実行可能ファイル。リポジトリは1つのSQLite(http://www.sqlite.org)データベースファイルであり、簡単にバックアップできます。私はまた、化石を実行してリポジトリをサムドライブに保存できることも気に入っています。これは、私のソフトウェア開発が完全に移植可能になったことを意味します。

あなたの考えを教えてください....


本当に面白いですね。git、mercurial、またはsvnにプッシュ/プルするツールがあるかどうかを知っていますか?
ティロ

化石ウィキでリンクを見つけました。私はこれを見たことはありません。この機能を必要とする人は、見てコメントしてください:< fossil-scm.org/index.html/wiki?name=Import+CVS+Repositories >
javelinBCD 2008年

そのURLは次のように変更されました:fossil-scm.org/fossil/wiki?name
Mike DeSimone

3
FossilがGITのインポートとエクスポートを追加しました... fossil-scm.org/index.html/doc/trunk/www/inout.wiki
javelinBCD

@javelinBCD:FYI Gitは頭字語ではありません
バグ

回答:


182

ミリキンさん、少し時間を取って化石に関する文書のいくつかをレビューするなら、私はあなたの反対がそこで扱われていると思います。リポジトリをsQLiteデータベースに格納することは、他のアプローチよりも間違いなく安全です。トランザクションデータベースを使用してリポジトリを格納することの利点については、リンクテキストを参照してください。膨らみについては、全体が1つの自己完結型の実行可能ファイルに含まれているため、その懸念は反証されるようです。

完全な開示:私は化石の著者です。

他のDVCSが私のニーズを満たしていないため、私が化石を書いたことに注意してください。一方、私のニーズはあなたのニーズではなく、化石があなたに適しているかどうかを判断できるのはあなただけです。しかし、私はあなたが少なくともドキュメンテーションを見て、それを却下する前にfossilが解決しようとしている問題を理解することを試みることをお勧めします。


43
Fossilは素晴らしい、素晴らしい作品に見えます。
グレッグヒューギル、

7
他のDVCSにはないfossilの機能は次のとおりです。-統合されたwiki。-統合されたバグ追跡-不変のアーティファクト- chroot監獄で実行することができます自己完結型、スタンドアロンの実行可能-シンプルな、明確に定義された、永続的なファイルフォーマット-統合されたWebインタフェース
A.Bouchez

71
完全な開示:彼はSQLiteの作者でもあります;)
アランプラム

18
回答のこの部分の+1:「一方で、私のニーズはあなたのニーズではなく、化石があなたに適しているかどうかを判断できるのはあなただけです。」私は品質管理の研修を受け、彼らは品質を「目的への適合」と定義しました。あなたの答えは同じ方向を向いています!
11

1
@ pluma、FssilはSqliteの開発者であるDリチャードヒップ氏によって作成されたと聞いたので、Fossilに興味を持ち始めました。
Edwin Yip 2014

47

Fossilを重要な開発プロジェクトで1年以上使用した後、私はこのトピックに取り組むのに十分な自信を持っています。

以下は、これまでの私の経験です。私は時々gitとsvnと比較していますが、これは単にそれらのSCMが非常によくわかっているためであり、比較することでアイデアを理解しやすくなります。

私はこのSCMに完全に惚れ込んでいるので、主にプラス面のポイントです。

Fossilの好きなところ:

1)多数のマシン(win / mac /多数のLinuxディストリビューション)があり、単一実行可能なインストールは、見た目と同じくらい美しいです。依存関係はありません。うまくいきます。Gitは乱雑なファイルの山であり、特に自分でビルドする必要がある場合、Subversionの依存関係の地獄は一部のLinuxディストリビューションで非常に厄介です。

2)デフォルトのFossilワークフローは私たちのプロジェクトに完全に適合し、必要に応じてより多くのgit'ishワークフローが可能です。

3)大規模なプロジェクトでも、非常に堅牢であることがわかりました。私はsqliteを書いた人たちに他に何も期待しないでしょう。クラッシュ、破損、おかしなビジネスはありません。

4)私は実際、パフォーマンスに非常に満足しています。巨大な木ではgitほど速くはありませんが、それほど遅くはありません。gitの場合のように、他のすべてのコマンドのドキュメントを参照する必要がないため、時間のロスを埋めることができます。

5)すべての操作の背後に実証済みのトランザクションデータベースが存在するという事実により、夜はよく眠れます。はい、私たちは古くて壊れたSubversionリポジトリの恐ろしい事件を2回以上経験しました(ありがたいことに、役立つコミュニティーが修正を助けてくれました)。Subversion 1.7.xでも、メタデータの保存にSqliteを使用しています。(git commitの途中で電源をオフにしてみてください-壊れたリポジトリが残ります!)

6)統合されたIssue TrackerとWikiはオプションですが、常に存在するため、非常に便利です。インストールは必要ありません。でも、Issue Trackerにもっと多くの機能があったらいいのですが、ちょっと-それはSCMです。

7)組み込みのサーバーとWeb GUIは単純に素晴らしく、CSSを介して非常に構成可能です。

8)gitおよびsubversionリポジトリとの間でインポートする必要がある場合があります。これは化石では簡単です。

9)単一ファイルのリポジトリ。あちこちに「.svn」ディレクトリはありません。

Fossilで気に入らない/嫌いなこと:

1)誰かが私たちの非技術的なWindowsユーザーのためにTortoiseFossilを書いてください:)

2)コミュニティはまだそれほど大きくないので、多くの人が自社に導入するのは難しいでしょう。うまくいけば、これが変更され、大規模なコミュニティのすべての利点(ドキュメント、新しいリリースのより多くのテストなど)が得られることを願っています

3)ローカルWeb UIに検索機能(ファイルコンテンツの検索を含む)が必要です。

4)gitよりもマージオプションが少ない(Fossilワークフローにより、マージが最初に発生する可能性が低くなりますが)。

誰もがFossilに試練を与えてくれることを願っています-世界は、うまく機能し、使用するためにロケット科学者である必要はないものでより良い場所です。


2
TortoiseFossilがおそらくいつか来ることを言及するのを忘れていましたが、今のところcode.google.com/p/fuel-scmがあります。
グランドジョンソン2012

3
「SharpFossil」/「WinFossil」があります
。repository.mobile

2
本当にうまくいくチケット検索ボックスを追加するレシピがあります。これは、fossilが提供するTH1スクリプトの可能性を利用しています
FvD

fuel-scmツールは、fuel-scm.org / fossil / indexに移動されました。別のアプローチは、Windows関連のプロジェクトに使用している場合、Visual Studio IDEを活用することです。fossil-scm.org/xfer/doc/trunk/www/fossil-from-msvc.wikiの
g5thomas

ちょうど好奇心が強い:何かが昨年変更されましたか?
-jno

14

Fossilは小さく、シンプルですが、強力で堅牢で、Cカルチャーのいくつかの原則を思い出させます。独自に開発し、現在も協力している人に好意的。優れたプロジェクトは原則から始めて、より多くのレイヤー(GUI、追加機能)を収集する際に、その中心に据えるべきです。

Fossilに感動し、使い始めました... fossilを見てください

乾杯


11

前回の投稿から1年が経過した後、このページに移動します。ここで言及されている再帰的な追加が処理されるようになりました。

Fossilは、特にバグ追跡システムをmercurialで動作させるのに苦労した後、私を魅了します。複数のプロジェクトを管理する方法、マルチユーザーアクセス用のリポジトリを公開する方法、およびマージを行う方法、パッチを管理する方法などを確認する必要があります。今後ががっかりすることはないと感じています。


7

ソースコードのバージョン管理に使用することに興味はありませんが、使用しているすべてのマシン間で同期できる、分散されたバージョン管理の個人用wikiに興味があります。


4

ダミアン、

1 /はい、fossilは再帰的な追加をサポートしていません。ただし、次のようなかなり単純な回避策があります。

for /r %i in (*.*) do fossil add "%i"

Windows、および

find . -type f -print0 | xargs -0 fossil add --

Unixでは。

2 /ファイル名に非ASCII文字を含むファイルを追加すると、不正なマニフェストに関するメッセージが表示されました。この問題は前回のビルドで修正されました。

よろしく、ペトル


2
WindowsではいつでもPowerShellを使用できます。これにより、この種のコマンドラインがより楽しく動作します。
javelinBCD 2008年

14
Linux / Unix / Mac OS XIでは、「fossil add」を実行するだけです。すべて、私のすべてのサブディレクトリとすべてを追加します
Trausti Thor

2
「fossil addremove」もすべてのプラットフォームで完全に再帰的です。上記の投稿はおそらく古くなっています。
FvD 2013年

1
はい、この投稿は廃止されました
Johannes Kuhn

3

化石は本当にクールだと思います。私にとって最も重要な機能は、簡単なインストールと、開発者に優しいデフォルトでした。現在、ファイルのローカル変更を追跡するために使用しています。(私たちのプロジェクトはsourceforgeでホストされ、CVSで追跡されます。)このようにして、プロジェクトが壊れた場合でもローカルで「コミット」できるため、小さな変更も追跡できます。


1

化石は良いです。シンプルで使いやすいです。fossilがチェックインとチェックアウトのためのGUIインターフェースを提供できる場合、それはより良いでしょう(クロスプラットフォームGUIをアーカイブするにはjava guiを推奨します)。

Fossilの主な利点は「オープンソース」と「SQLiteデータベースの使用」であるため、誰かがfossilソースコードをコンパイルして、google androidプラットフォーム(モバイルおよびタブレットデバイス)でfossilを機能させることができます。


0

私は今あなたのvcsを試しています。すべてを統合するというアイデアが気に入っています。結局のところ、このようなシステムを探すときに必要なのはすべてです。Mercurialのアクティブユーザーです。そして、Issue Trackerとの統合を見つけることができませんでした(私は過去にMercurialでp Tracを設定することに失敗しました)。いくつかのテストの後、私は次のことに気づきました:1)「追加」コマンドが再帰的ではない、またはドキュメントにそれを行う方法が見つからない2)750ファイルを追加するためにバット(iウィンドウで作業)を作成して実行する(しばらく時間がかかりました)。実行コミットすると、「マニフェストの不正な形式」でジャンプします

私はあなたがこの問題やhttps://www.mercurial-scm.org/wiki/UserSurveyで Mercurialのような調査を行う他の人たちに対処できると思います。あなたはGmailのdnosedaで私を書くことができます

あなたの仕事に興味があります。それを改善してください。

よろしく

PS:市長の改善として、gitstatのようなものを追加することができます


3
(私は化石の開発者ではありません-ユーザーだけです)1.問題トラッカーがあります(それはセルフホスティングです)2. fossilの追加フォルダーは再帰的です(先頭に '。'があるファイル/フォルダーは無視します)昨夜それを使用して作成しました問題のないplt-scheme.org subversionトランクのローカル化石リポジトリ3.メーリングリストはアクティブであり、開発者は非常に応答性が高く、現時点ではあまり混雑していないようです。Fossilにはバグがなかったので、使用する必要のない課題トラッカーもあります。
Stephen

1
Fogbugz(バグ追跡)は、Fogcreekによって提供されるKiln(Mercurialのオンラインレポジトリ)で動作します
Toby Allen

-9

おそらく、教育を受けていないつまらない反応かもしれませんが、リポジトリをSQLiteデータベースのようにバイナリBLOBに格納するという考えは、私を怖がらせます。私はまた、VCSにwikiとバグトラッカーを直接含めることの利点に疑問があります-Tracのような完全なソフトウェアと比較して機能が不十分であるか、またはVCSがSubversionやBazaarと比較して大幅に肥大化しています。


21
SQLiteは「バイナリBLOB」ではありません。これは本当に開かれたファイル形式であり、クロスプラットフォームであり、十分に文書化されています。SQLiteは最も広く使用されているデータベースであるため、今後も常にサポートされます。また、化石で使用されるアーティファクトストレージも効率的で、十分に文書化されており、読みやすくなっています。SQLiteは今日最大のオープンソースプロジェクトの1つであり、化石を使用してホストされています。
A.Bouchez 2010

3
エクスポートを含む、sqlite dbをすばやく簡単に操作する方法については、Firefox拡張機能code.google.com/p/sqlite-managerを
matt wilkie 2010年

8
リポジトリを見ると、そこにあるすべてのDVCSは「バイナリBLOB」です。最後の非バイナリはCVSでした...私にも予約がありましたが、それを乗り越えました。
ユルゲンA.エアハルト

2
「FossilはSQLiteに基づいていません。Fossilの現在の実装では、SQLiteを分散データベースのコンテンツのローカルストアとして、また、迅速かつ簡単に表示できるように事前計算された分散データベースに関するメタ情報のキャッシュとして使用しています。 SQLiteのこの役割は実装の詳細であり、設計の基本ではありません。」www.sqlite.org/debug1/doc/trunk/www/theory1.wiki
Gulbahar
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.