23

分散バージョン管理システムを試すことに興味があります。git は有望に思えますが、git の Windows ポートに関するメモをどこかで見ました。「非 ASCII ファイル名は使用しないでください」今は見つけられませんが、このリンクがあります。今のところgitから離れていますが、他のオプションがより良いかどうかはわかりません。

非 ASCII ファイル名のサポートは、私の日本の会社にとって不可欠です。ファイル名を Unicode として内部的に保存するものを探しています。これは、無限の悲しみを引き起こすプラットフォーム依存のエンコーディングではありません。そう:

  1. どの DVCS が Unicode ファイル名をサポートしていますか?
  2. WindowsとLinuxの両方で?
  3. 理想的には、最小限の問題で Windows マシンと Linux マシン間でリポジトリを転送できる可能性がありますか?
4

7 に答える 7

9

同じリポジトリの問題80を参照してください。2009年に、Gitメーリングリスト(例:1、2)で、Gitのメンテナーである濱野純雄がこれについていくつか質問したという議論がありました。私はここにそれを持っていません。建設的な方法でスレッドに参加することで、問題の解決に役立つ場合があります。

Java実装JGitでは、テキストのメタデータとファイル名を作成するときに常にUTF-8を使用します。それが唯一の方法ですが、考慮すべきことがいくつかあります。

于 2009-05-06T14:56:07.047 に答える
8

ギット

2009年8月:

msysgitプロジェクトは、WindowsでのGitのUTF-8サポートの修正で忙しいです。次のリリースで修正される可能性があります。


2012年2月の更新

UTF-8がmsysgitに登場し、このようなコミットで「UTF-8の設定を更新しません」

Git for WindowsのGoogle+ページから:

KarstenBleesのGitforWindows用のUTF-8パッチが' devel'にマージされました。
これは、次のリリースでUnicodeファイル名がサポートされることを意味します。


2012年4月更新

mSysGit1.7.10でリリースされました。

Git forWindowsUnicodeサポートのページを参照してください。

于 2009-08-13T19:39:07.563 に答える
8

マーキュリアル

Linux では、Mercurial はシステムのエンコーディングをそのままエンコードすると思います (間違っていたら訂正してください)。したがって、クロスプラットフォームの互換性のために Linux を UTF-8 に設定するのが最善です。これは、多くの最新のディストリビューションのデフォルトです。

Windows では、Mercurial (Python のバイト文字列処理のため) はシステム コード ページを使用します。これにより、非 ASCII 文字のクロスプラットフォーム相互運用性がほぼ保証されます。

Windows 用の fixutf8 拡張 (Mercurial 2.0 より前)

外部で作成された Windows 用のfixutf8と呼ばれる Mercurial 拡張機能があります。これは、すべての Unicode 文字 (現在のコード ページ外のものも含む) を適切に処理し、Mercurial リポジトリでファイル名を UTF-8 としてエンコードします。したがって、Linux が UTF-8 エンコーディングを使用している限り、Linux との相互運用が可能になります。先週、Windows セットアップで有効にしようとしましたが、インストールでいくつか問題がありました。それ以来、1 つの問題が修正されました。唯一の問題は、バイナリ Mercurial ディストリビューションが Python 2.4 でビルドされているのに対して、fixutf8 では、fixutf8 をロードするために Mercurial を Python 2.5 以降でビルドする必要があることです。これは近いうちに解決されると思います。

Windows 用の Mercurial 2.0 以降

fixutf8 Web ページによると、fixutf8 は Mercurial 2.0 以降と互換性がないようです。今後のソリューションの詳細については、WindowsUTF8Planを参照してください。これがいつ実装されるかはわかりません。

于 2009-05-09T12:08:17.997 に答える
2

Windows 1.7.10 上の Git は、ユーザーのロケールに関係なく、ファイル名に UTF-8 を使用するようになりました。

于 2012-04-27T11:57:29.157 に答える
0

このページによると: Bazaar、Codendi、CVSNT、Monotone、Perforce、Rational Team Concert、Subversion、Surround SCM、Synergy。しかし、そのページには多くの「未知数」があります。

于 2010-05-21T05:50:55.427 に答える