SlideShare a Scribd company logo
TortoiseGit で日本語ファイル名を
 使うときの git の選択について


             2010/9/30 NSEG Git 勉強会

                   ジーワークス 佐藤 潔
動機

●   今まで TortoiseSVN を使っていたので、やっぱり
    TortoiseGit 使いたい。
●   仕様書や資料も一緒にバージョン管理したいので、
    日本語ファイル名使いたい。
Git の選択?

●   TortoiseGit はそれ単独で動くのではない。
●   外部の Git コマンドを呼び出すための GUI のガワ。
●   だから Git へ受け渡す文字コード問題が発生する。
選択肢

●   git for windows (msysgit)
●   Cygwin git
●   日本語ファイル名パッチ版 git for windows
    (http://tmurakam.org/git/)

ちなみに msysgit は msys という Cygwin の派生版上で動く git 。
なのでどれも元は同じ Cygwin 上の git と考えて良い。
git for windows (msysgit)

●   ファイル名の文字コード : Shift-JIS
●   TortoiseGit からは日本語ファイル名が一部通らない。
    「構」とか 2 バイト目が「 0x5C 」になる場合、ファイル名は正
    しく表示されるが、エラー「 fatal: pathspec ' ・ ' did not
    match any files 」となる。
●   ファイル名文字コードが Shift-JIS で扱われるため、 Linux
    など他の環境と混在する場合などはうまく機能しないので、日
    本語ファイル名は扱わないほうが良い。
Cygwin git

●   ファイル名の文字コード : UTF-8 (Cygwin-1.7 以降 )
●   コマンドで叩く分には日本語ファイル名も問題なく扱える。
    が、 TortoiseGit からは日本語ファイル名は通らない。
    日本語ファイル名の表示も化ける。
●   ファイル名が UTF-8 で扱われるため msysgit のような多環
    境との混在での日本語ファイル名問題は起こらない。
日本語ファイル名パッチ版
       git for windows
●   ファイル名の文字コード : UTF-8
●   TortoiseGit から日本語ファイル名が通り、ファイル名も正し
    く表示される。
    ただ log などを見たときのファイル名は正しく表示されない。
●   ファイル名の扱いが UTF-8 になるようにパッチされているた
    め、他環境との日本語ファイル名問題は起こらない(と思う)。
比較



                  ファイル名       他環境との      TortoiseGit から
                  文字コード       日本語ファイル名   日本語ファイル名
git for windows
                  Shift-JIS       ×             △
(msysgit)

Cygwin git         UTF-8         ○              ×

日本語ファイル名
                   UTF-8         ○?             ○
パッチ版 git
結論

TortoiseGit から日本語ファイル名を使うには、
日本語ファイル名パッチ版 git for windows
を使うしかない。



でも…  TortoiseGit 自体がダメダメという意見もちょくちょく聞
くのでどうしたもんか。
Ad

More Related Content

What's hot (20)

CMake multiplatform build-tool
CMake multiplatform build-toolCMake multiplatform build-tool
CMake multiplatform build-tool
Naruto TAKAHASHI
 
k8s初心者が gRPC × envoyを導入したら色々苦労した話 #yjbonfire
k8s初心者が gRPC × envoyを導入したら色々苦労した話 #yjbonfirek8s初心者が gRPC × envoyを導入したら色々苦労した話 #yjbonfire
k8s初心者が gRPC × envoyを導入したら色々苦労した話 #yjbonfire
Yahoo!デベロッパーネットワーク
 
3GPP F1インターフェース(TS38.470-f50)の概要
3GPP F1インターフェース(TS38.470-f50)の概要3GPP F1インターフェース(TS38.470-f50)の概要
3GPP F1インターフェース(TS38.470-f50)の概要
Tetsuya Hasegawa
 
Ansible ではじめる ネットワーク自動化(Ansible 2.9版)
Ansible ではじめる ネットワーク自動化(Ansible 2.9版)Ansible ではじめる ネットワーク自動化(Ansible 2.9版)
Ansible ではじめる ネットワーク自動化(Ansible 2.9版)
akira6592
 
Prometheus at Preferred Networks
Prometheus at Preferred NetworksPrometheus at Preferred Networks
Prometheus at Preferred Networks
Preferred Networks
 
Haskell Day2012 - 参照透過性とは何だったのか
Haskell Day2012 - 参照透過性とは何だったのかHaskell Day2012 - 参照透過性とは何だったのか
Haskell Day2012 - 参照透過性とは何だったのか
Kousuke Ruichi
 
Ethernetの受信処理
Ethernetの受信処理Ethernetの受信処理
Ethernetの受信処理
Takuya ASADA
 
SSE4.2の文字列処理命令の紹介
SSE4.2の文字列処理命令の紹介SSE4.2の文字列処理命令の紹介
SSE4.2の文字列処理命令の紹介
MITSUNARI Shigeo
 
マーク&スイープ勉強会
マーク&スイープ勉強会マーク&スイープ勉強会
マーク&スイープ勉強会
7shi
 
AWSで動画共有サイトを作成して全社に公開
AWSで動画共有サイトを作成して全社に公開AWSで動画共有サイトを作成して全社に公開
AWSで動画共有サイトを作成して全社に公開
ToruKubota4
 
コマンドラインツールデザイン
コマンドラインツールデザインコマンドラインツールデザイン
コマンドラインツールデザイン
t_ichioka_sg
 
範囲証明つき準同型暗号とその対話的プロトコル
範囲証明つき準同型暗号とその対話的プロトコル範囲証明つき準同型暗号とその対話的プロトコル
範囲証明つき準同型暗号とその対話的プロトコル
MITSUNARI Shigeo
 
Unicode結合文字 難読化シェル芸
Unicode結合文字 難読化シェル芸Unicode結合文字 難読化シェル芸
Unicode結合文字 難読化シェル芸
kanata -
 
IIJmio meeting 19 IIJ フルMVNO徹底解説
IIJmio meeting 19 IIJ フルMVNO徹底解説IIJmio meeting 19 IIJ フルMVNO徹底解説
IIJmio meeting 19 IIJ フルMVNO徹底解説
techlog (Internet Initiative Japan Inc.)
 
Katagaitai CTF勉強会 #4 Crypto
Katagaitai CTF勉強会 #4 CryptoKatagaitai CTF勉強会 #4 Crypto
Katagaitai CTF勉強会 #4 Crypto
trmr
 
IPv4/IPv6 移行・共存技術の動向
IPv4/IPv6 移行・共存技術の動向IPv4/IPv6 移行・共存技術の動向
IPv4/IPv6 移行・共存技術の動向
Yuya Rin
 
Hiveを高速化するLLAP
Hiveを高速化するLLAPHiveを高速化するLLAP
Hiveを高速化するLLAP
Yahoo!デベロッパーネットワーク
 
Native Memory Tracking
Native Memory TrackingNative Memory Tracking
Native Memory Tracking
Takahiro YAMADA
 
自宅サーバラックの勧め BGP4編
自宅サーバラックの勧め BGP4編自宅サーバラックの勧め BGP4編
自宅サーバラックの勧め BGP4編
h-otter
 
RFC5996(IKEv2)第2版
RFC5996(IKEv2)第2版RFC5996(IKEv2)第2版
RFC5996(IKEv2)第2版
Tetsuya Hasegawa
 
CMake multiplatform build-tool
CMake multiplatform build-toolCMake multiplatform build-tool
CMake multiplatform build-tool
Naruto TAKAHASHI
 
k8s初心者が gRPC × envoyを導入したら色々苦労した話 #yjbonfire
k8s初心者が gRPC × envoyを導入したら色々苦労した話 #yjbonfirek8s初心者が gRPC × envoyを導入したら色々苦労した話 #yjbonfire
k8s初心者が gRPC × envoyを導入したら色々苦労した話 #yjbonfire
Yahoo!デベロッパーネットワーク
 
3GPP F1インターフェース(TS38.470-f50)の概要
3GPP F1インターフェース(TS38.470-f50)の概要3GPP F1インターフェース(TS38.470-f50)の概要
3GPP F1インターフェース(TS38.470-f50)の概要
Tetsuya Hasegawa
 
Ansible ではじめる ネットワーク自動化(Ansible 2.9版)
Ansible ではじめる ネットワーク自動化(Ansible 2.9版)Ansible ではじめる ネットワーク自動化(Ansible 2.9版)
Ansible ではじめる ネットワーク自動化(Ansible 2.9版)
akira6592
 
Prometheus at Preferred Networks
Prometheus at Preferred NetworksPrometheus at Preferred Networks
Prometheus at Preferred Networks
Preferred Networks
 
Haskell Day2012 - 参照透過性とは何だったのか
Haskell Day2012 - 参照透過性とは何だったのかHaskell Day2012 - 参照透過性とは何だったのか
Haskell Day2012 - 参照透過性とは何だったのか
Kousuke Ruichi
 
Ethernetの受信処理
Ethernetの受信処理Ethernetの受信処理
Ethernetの受信処理
Takuya ASADA
 
SSE4.2の文字列処理命令の紹介
SSE4.2の文字列処理命令の紹介SSE4.2の文字列処理命令の紹介
SSE4.2の文字列処理命令の紹介
MITSUNARI Shigeo
 
マーク&スイープ勉強会
マーク&スイープ勉強会マーク&スイープ勉強会
マーク&スイープ勉強会
7shi
 
AWSで動画共有サイトを作成して全社に公開
AWSで動画共有サイトを作成して全社に公開AWSで動画共有サイトを作成して全社に公開
AWSで動画共有サイトを作成して全社に公開
ToruKubota4
 
コマンドラインツールデザイン
コマンドラインツールデザインコマンドラインツールデザイン
コマンドラインツールデザイン
t_ichioka_sg
 
範囲証明つき準同型暗号とその対話的プロトコル
範囲証明つき準同型暗号とその対話的プロトコル範囲証明つき準同型暗号とその対話的プロトコル
範囲証明つき準同型暗号とその対話的プロトコル
MITSUNARI Shigeo
 
Unicode結合文字 難読化シェル芸
Unicode結合文字 難読化シェル芸Unicode結合文字 難読化シェル芸
Unicode結合文字 難読化シェル芸
kanata -
 
Katagaitai CTF勉強会 #4 Crypto
Katagaitai CTF勉強会 #4 CryptoKatagaitai CTF勉強会 #4 Crypto
Katagaitai CTF勉強会 #4 Crypto
trmr
 
IPv4/IPv6 移行・共存技術の動向
IPv4/IPv6 移行・共存技術の動向IPv4/IPv6 移行・共存技術の動向
IPv4/IPv6 移行・共存技術の動向
Yuya Rin
 
自宅サーバラックの勧め BGP4編
自宅サーバラックの勧め BGP4編自宅サーバラックの勧め BGP4編
自宅サーバラックの勧め BGP4編
h-otter
 

Viewers also liked (7)

IPフォンから国際電話を掛けることで金をかすめとる攻撃手法
IPフォンから国際電話を掛けることで金をかすめとる攻撃手法IPフォンから国際電話を掛けることで金をかすめとる攻撃手法
IPフォンから国際電話を掛けることで金をかすめとる攻撃手法
Kiyoshi SATOH
 
git ~start PullRequest~
git ~start PullRequest~git ~start PullRequest~
git ~start PullRequest~
Souichirou Andou
 
WindowsでGitを使う際のベストプラクティス
WindowsでGitを使う際のベストプラクティスWindowsでGitを使う際のベストプラクティス
WindowsでGitを使う際のベストプラクティス
Ryo Sumasu
 
Samba4を「ふつうに」使おう!(2015/08/08 OSC 2015 Kansai@Kyoto)
Samba4を「ふつうに」使おう!(2015/08/08 OSC 2015 Kansai@Kyoto)Samba4を「ふつうに」使おう!(2015/08/08 OSC 2015 Kansai@Kyoto)
Samba4を「ふつうに」使おう!(2015/08/08 OSC 2015 Kansai@Kyoto)
基信 高橋
 
バージョン管理のワークフロー
バージョン管理のワークフローバージョン管理のワークフロー
バージョン管理のワークフロー
add20
 
こわくない Git
こわくない Gitこわくない Git
こわくない Git
Kota Saito
 
いつやるの?Git入門
いつやるの?Git入門いつやるの?Git入門
いつやるの?Git入門
Masakazu Matsushita
 
IPフォンから国際電話を掛けることで金をかすめとる攻撃手法
IPフォンから国際電話を掛けることで金をかすめとる攻撃手法IPフォンから国際電話を掛けることで金をかすめとる攻撃手法
IPフォンから国際電話を掛けることで金をかすめとる攻撃手法
Kiyoshi SATOH
 
WindowsでGitを使う際のベストプラクティス
WindowsでGitを使う際のベストプラクティスWindowsでGitを使う際のベストプラクティス
WindowsでGitを使う際のベストプラクティス
Ryo Sumasu
 
Samba4を「ふつうに」使おう!(2015/08/08 OSC 2015 Kansai@Kyoto)
Samba4を「ふつうに」使おう!(2015/08/08 OSC 2015 Kansai@Kyoto)Samba4を「ふつうに」使おう!(2015/08/08 OSC 2015 Kansai@Kyoto)
Samba4を「ふつうに」使おう!(2015/08/08 OSC 2015 Kansai@Kyoto)
基信 高橋
 
バージョン管理のワークフロー
バージョン管理のワークフローバージョン管理のワークフロー
バージョン管理のワークフロー
add20
 
こわくない Git
こわくない Gitこわくない Git
こわくない Git
Kota Saito
 
Ad

Similar to Tortoise gitで日本語ファイル名を使うときのgitの選択について (20)

もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜
もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜
もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜
Takashi Uemura
 
わしわし的おすすめ .gitconfig 設定 (と見せかけて実はみんなのおすすめ .gitconfig 設定を教えてもらう魂胆) #広島Git 勉強会
わしわし的おすすめ  .gitconfig 設定 (と見せかけて実はみんなのおすすめ .gitconfig 設定を教えてもらう魂胆) #広島Git 勉強会わしわし的おすすめ  .gitconfig 設定 (と見せかけて実はみんなのおすすめ .gitconfig 設定を教えてもらう魂胆) #広島Git 勉強会
わしわし的おすすめ .gitconfig 設定 (と見せかけて実はみんなのおすすめ .gitconfig 設定を教えてもらう魂胆) #広島Git 勉強会
Yukinori KITADAI
 
OSSの敵になるのもいいじゃない
OSSの敵になるのもいいじゃないOSSの敵になるのもいいじゃない
OSSの敵になるのもいいじゃない
lestrrat
 
Git 初心者講座 by forkwell
Git 初心者講座 by forkwellGit 初心者講座 by forkwell
Git 初心者講座 by forkwell
sinsoku listy
 
Git入門 (Windows)
Git入門 (Windows)Git入門 (Windows)
Git入門 (Windows)
Tomo Mizoe
 
pkgsrc で gimp がアレだった件 - デマと放置と私
pkgsrc で gimp がアレだった件 - デマと放置と私pkgsrc で gimp がアレだった件 - デマと放置と私
pkgsrc で gimp がアレだった件 - デマと放置と私
Akio OBATA
 
底辺webプログラマが今更git語ってみた
底辺webプログラマが今更git語ってみた底辺webプログラマが今更git語ってみた
底辺webプログラマが今更git語ってみた
Yudai Fujita
 
Gitoriousをubuntu 10.04 LTSへインストール
Gitoriousをubuntu 10.04 LTSへインストールGitoriousをubuntu 10.04 LTSへインストール
Gitoriousをubuntu 10.04 LTSへインストール
Kiyoshi SATOH
 
Git演習(1)
Git演習(1)Git演習(1)
Git演習(1)
sono8
 
Goにおける静的解析と製品開発への応用
Goにおける静的解析と製品開発への応用Goにおける静的解析と製品開発への応用
Goにおける静的解析と製品開発への応用
Takuya Ueda
 
Go静的解析ハンズオン
Go静的解析ハンズオンGo静的解析ハンズオン
Go静的解析ハンズオン
Takuya Ueda
 
Gitの紹介
Gitの紹介Gitの紹介
Gitの紹介
Shoot Morii
 
Open Source Conference Kansai@Kyoto 2012 presentaiton about Tizen and Tizen M...
Open Source Conference Kansai@Kyoto 2012 presentaiton about Tizen and Tizen M...Open Source Conference Kansai@Kyoto 2012 presentaiton about Tizen and Tizen M...
Open Source Conference Kansai@Kyoto 2012 presentaiton about Tizen and Tizen M...
Yuya Adachi
 
Gitのいいところ
GitのいいところGitのいいところ
Gitのいいところ
kyanro
 
15分でわかるGit入門
15分でわかるGit入門15分でわかるGit入門
15分でわかるGit入門
to_ueda
 
LibreOfficeコミュニティに不具合修正パッチを送ってみた
LibreOfficeコミュニティに不具合修正パッチを送ってみたLibreOfficeコミュニティに不具合修正パッチを送ってみた
LibreOfficeコミュニティに不具合修正パッチを送ってみた
Tomofumi Yagi
 
Introduction about Tizen on Open Seminor Kagawa 2012
Introduction about Tizen on Open Seminor Kagawa 2012Introduction about Tizen on Open Seminor Kagawa 2012
Introduction about Tizen on Open Seminor Kagawa 2012
Yuya Adachi
 
My add Git
My add GitMy add Git
My add Git
Masafumi Yokoyama
 
Debian tokyo-20150224-01
Debian tokyo-20150224-01Debian tokyo-20150224-01
Debian tokyo-20150224-01
Yuji IMAI
 
もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜
もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜
もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜
Takashi Uemura
 
わしわし的おすすめ .gitconfig 設定 (と見せかけて実はみんなのおすすめ .gitconfig 設定を教えてもらう魂胆) #広島Git 勉強会
わしわし的おすすめ  .gitconfig 設定 (と見せかけて実はみんなのおすすめ .gitconfig 設定を教えてもらう魂胆) #広島Git 勉強会わしわし的おすすめ  .gitconfig 設定 (と見せかけて実はみんなのおすすめ .gitconfig 設定を教えてもらう魂胆) #広島Git 勉強会
わしわし的おすすめ .gitconfig 設定 (と見せかけて実はみんなのおすすめ .gitconfig 設定を教えてもらう魂胆) #広島Git 勉強会
Yukinori KITADAI
 
OSSの敵になるのもいいじゃない
OSSの敵になるのもいいじゃないOSSの敵になるのもいいじゃない
OSSの敵になるのもいいじゃない
lestrrat
 
Git 初心者講座 by forkwell
Git 初心者講座 by forkwellGit 初心者講座 by forkwell
Git 初心者講座 by forkwell
sinsoku listy
 
Git入門 (Windows)
Git入門 (Windows)Git入門 (Windows)
Git入門 (Windows)
Tomo Mizoe
 
pkgsrc で gimp がアレだった件 - デマと放置と私
pkgsrc で gimp がアレだった件 - デマと放置と私pkgsrc で gimp がアレだった件 - デマと放置と私
pkgsrc で gimp がアレだった件 - デマと放置と私
Akio OBATA
 
底辺webプログラマが今更git語ってみた
底辺webプログラマが今更git語ってみた底辺webプログラマが今更git語ってみた
底辺webプログラマが今更git語ってみた
Yudai Fujita
 
Gitoriousをubuntu 10.04 LTSへインストール
Gitoriousをubuntu 10.04 LTSへインストールGitoriousをubuntu 10.04 LTSへインストール
Gitoriousをubuntu 10.04 LTSへインストール
Kiyoshi SATOH
 
Git演習(1)
Git演習(1)Git演習(1)
Git演習(1)
sono8
 
Goにおける静的解析と製品開発への応用
Goにおける静的解析と製品開発への応用Goにおける静的解析と製品開発への応用
Goにおける静的解析と製品開発への応用
Takuya Ueda
 
Go静的解析ハンズオン
Go静的解析ハンズオンGo静的解析ハンズオン
Go静的解析ハンズオン
Takuya Ueda
 
Open Source Conference Kansai@Kyoto 2012 presentaiton about Tizen and Tizen M...
Open Source Conference Kansai@Kyoto 2012 presentaiton about Tizen and Tizen M...Open Source Conference Kansai@Kyoto 2012 presentaiton about Tizen and Tizen M...
Open Source Conference Kansai@Kyoto 2012 presentaiton about Tizen and Tizen M...
Yuya Adachi
 
Gitのいいところ
GitのいいところGitのいいところ
Gitのいいところ
kyanro
 
15分でわかるGit入門
15分でわかるGit入門15分でわかるGit入門
15分でわかるGit入門
to_ueda
 
LibreOfficeコミュニティに不具合修正パッチを送ってみた
LibreOfficeコミュニティに不具合修正パッチを送ってみたLibreOfficeコミュニティに不具合修正パッチを送ってみた
LibreOfficeコミュニティに不具合修正パッチを送ってみた
Tomofumi Yagi
 
Introduction about Tizen on Open Seminor Kagawa 2012
Introduction about Tizen on Open Seminor Kagawa 2012Introduction about Tizen on Open Seminor Kagawa 2012
Introduction about Tizen on Open Seminor Kagawa 2012
Yuya Adachi
 
Debian tokyo-20150224-01
Debian tokyo-20150224-01Debian tokyo-20150224-01
Debian tokyo-20150224-01
Yuji IMAI
 
Ad

More from Kiyoshi SATOH (16)

Colabをshellから使う
Colabをshellから使うColabをshellから使う
Colabをshellから使う
Kiyoshi SATOH
 
milter-managerが便利な話
milter-managerが便利な話milter-managerが便利な話
milter-managerが便利な話
Kiyoshi SATOH
 
えせソアリンを作る
えせソアリンを作るえせソアリンを作る
えせソアリンを作る
Kiyoshi SATOH
 
ディープラーニングブームは続くのか
ディープラーニングブームは続くのかディープラーニングブームは続くのか
ディープラーニングブームは続くのか
Kiyoshi SATOH
 
スパム対策お焚き上げ
スパム対策お焚き上げスパム対策お焚き上げ
スパム対策お焚き上げ
Kiyoshi SATOH
 
ディープラーニング概要
ディープラーニング概要ディープラーニング概要
ディープラーニング概要
Kiyoshi SATOH
 
シンギュラリティはくるの?
シンギュラリティはくるの?シンギュラリティはくるの?
シンギュラリティはくるの?
Kiyoshi SATOH
 
ディープラーニングハンズオンを準備して学んだこと
ディープラーニングハンズオンを準備して学んだことディープラーニングハンズオンを準備して学んだこと
ディープラーニングハンズオンを準備して学んだこと
Kiyoshi SATOH
 
GCEをTensorFlowの「計算エンジン」にする
GCEをTensorFlowの「計算エンジン」にするGCEをTensorFlowの「計算エンジン」にする
GCEをTensorFlowの「計算エンジン」にする
Kiyoshi SATOH
 
SNS時代のスパム手法
SNS時代のスパム手法SNS時代のスパム手法
SNS時代のスパム手法
Kiyoshi SATOH
 
ニューロンになってみる
ニューロンになってみるニューロンになってみる
ニューロンになってみる
Kiyoshi SATOH
 
Web開発用ツール導入のすすめ
Web開発用ツール導入のすすめWeb開発用ツール導入のすすめ
Web開発用ツール導入のすすめ
Kiyoshi SATOH
 
node+socket.io+enchant.jsでチャットゲーを作る
node+socket.io+enchant.jsでチャットゲーを作るnode+socket.io+enchant.jsでチャットゲーを作る
node+socket.io+enchant.jsでチャットゲーを作る
Kiyoshi SATOH
 
普通の人のパソコン向け最低限のセキュリティ対策
普通の人のパソコン向け最低限のセキュリティ対策普通の人のパソコン向け最低限のセキュリティ対策
普通の人のパソコン向け最低限のセキュリティ対策
Kiyoshi SATOH
 
taRgreyでコストを掛けずにスパム削減
taRgreyでコストを掛けずにスパム削減taRgreyでコストを掛けずにスパム削減
taRgreyでコストを掛けずにスパム削減
Kiyoshi SATOH
 
なんで迷惑メールはなくならないの?
なんで迷惑メールはなくならないの?なんで迷惑メールはなくならないの?
なんで迷惑メールはなくならないの?
Kiyoshi SATOH
 
Colabをshellから使う
Colabをshellから使うColabをshellから使う
Colabをshellから使う
Kiyoshi SATOH
 
milter-managerが便利な話
milter-managerが便利な話milter-managerが便利な話
milter-managerが便利な話
Kiyoshi SATOH
 
えせソアリンを作る
えせソアリンを作るえせソアリンを作る
えせソアリンを作る
Kiyoshi SATOH
 
ディープラーニングブームは続くのか
ディープラーニングブームは続くのかディープラーニングブームは続くのか
ディープラーニングブームは続くのか
Kiyoshi SATOH
 
スパム対策お焚き上げ
スパム対策お焚き上げスパム対策お焚き上げ
スパム対策お焚き上げ
Kiyoshi SATOH
 
ディープラーニング概要
ディープラーニング概要ディープラーニング概要
ディープラーニング概要
Kiyoshi SATOH
 
シンギュラリティはくるの?
シンギュラリティはくるの?シンギュラリティはくるの?
シンギュラリティはくるの?
Kiyoshi SATOH
 
ディープラーニングハンズオンを準備して学んだこと
ディープラーニングハンズオンを準備して学んだことディープラーニングハンズオンを準備して学んだこと
ディープラーニングハンズオンを準備して学んだこと
Kiyoshi SATOH
 
GCEをTensorFlowの「計算エンジン」にする
GCEをTensorFlowの「計算エンジン」にするGCEをTensorFlowの「計算エンジン」にする
GCEをTensorFlowの「計算エンジン」にする
Kiyoshi SATOH
 
SNS時代のスパム手法
SNS時代のスパム手法SNS時代のスパム手法
SNS時代のスパム手法
Kiyoshi SATOH
 
ニューロンになってみる
ニューロンになってみるニューロンになってみる
ニューロンになってみる
Kiyoshi SATOH
 
Web開発用ツール導入のすすめ
Web開発用ツール導入のすすめWeb開発用ツール導入のすすめ
Web開発用ツール導入のすすめ
Kiyoshi SATOH
 
node+socket.io+enchant.jsでチャットゲーを作る
node+socket.io+enchant.jsでチャットゲーを作るnode+socket.io+enchant.jsでチャットゲーを作る
node+socket.io+enchant.jsでチャットゲーを作る
Kiyoshi SATOH
 
普通の人のパソコン向け最低限のセキュリティ対策
普通の人のパソコン向け最低限のセキュリティ対策普通の人のパソコン向け最低限のセキュリティ対策
普通の人のパソコン向け最低限のセキュリティ対策
Kiyoshi SATOH
 
taRgreyでコストを掛けずにスパム削減
taRgreyでコストを掛けずにスパム削減taRgreyでコストを掛けずにスパム削減
taRgreyでコストを掛けずにスパム削減
Kiyoshi SATOH
 
なんで迷惑メールはなくならないの?
なんで迷惑メールはなくならないの?なんで迷惑メールはなくならないの?
なんで迷惑メールはなくならないの?
Kiyoshi SATOH
 

Recently uploaded (7)

【第28回redmine.tokyo LT】RedmineProjectImporterのご紹介.pptx
【第28回redmine.tokyo LT】RedmineProjectImporterのご紹介.pptx【第28回redmine.tokyo LT】RedmineProjectImporterのご紹介.pptx
【第28回redmine.tokyo LT】RedmineProjectImporterのご紹介.pptx
Hidehisa Matsutani
 
AIの心臓部を支える力 ― ニューラルネットワークプロセッサの進化と未来.pdf
AIの心臓部を支える力 ― ニューラルネットワークプロセッサの進化と未来.pdfAIの心臓部を支える力 ― ニューラルネットワークプロセッサの進化と未来.pdf
AIの心臓部を支える力 ― ニューラルネットワークプロセッサの進化と未来.pdf
Data Source
 
論文紹介:"Visual Genome:Connecting Language and Vision​Using Crowdsourced Dense I...
論文紹介:"Visual Genome:Connecting Language and Vision​Using Crowdsourced Dense I...論文紹介:"Visual Genome:Connecting Language and Vision​Using Crowdsourced Dense I...
論文紹介:"Visual Genome:Connecting Language and Vision​Using Crowdsourced Dense I...
Toru Tamaki
 
「Technology×Business×生成AI」株式会社CoToMaで未来を作る仲間募集!
「Technology×Business×生成AI」株式会社CoToMaで未来を作る仲間募集!「Technology×Business×生成AI」株式会社CoToMaで未来を作る仲間募集!
「Technology×Business×生成AI」株式会社CoToMaで未来を作る仲間募集!
fujishiman
 
論文紹介:What, when, and where? ​Self-Supervised Spatio-Temporal Grounding​in Unt...
論文紹介:What, when, and where? ​Self-Supervised Spatio-Temporal Grounding​in Unt...論文紹介:What, when, and where? ​Self-Supervised Spatio-Temporal Grounding​in Unt...
論文紹介:What, when, and where? ​Self-Supervised Spatio-Temporal Grounding​in Unt...
Toru Tamaki
 
俺SoC (Laxer Chip, AX1001)の Prolog加速命令.New multiple branch instruction for RIS...
俺SoC (Laxer Chip, AX1001)の Prolog加速命令.New multiple branch instruction for RIS...俺SoC (Laxer Chip, AX1001)の Prolog加速命令.New multiple branch instruction for RIS...
俺SoC (Laxer Chip, AX1001)の Prolog加速命令.New multiple branch instruction for RIS...
たけおか しょうぞう
 
論文紹介:PitcherNet: Powering the Moneyball Evolution in Baseball Video Analytics
論文紹介:PitcherNet: Powering the Moneyball Evolution in Baseball Video Analytics論文紹介:PitcherNet: Powering the Moneyball Evolution in Baseball Video Analytics
論文紹介:PitcherNet: Powering the Moneyball Evolution in Baseball Video Analytics
Toru Tamaki
 
【第28回redmine.tokyo LT】RedmineProjectImporterのご紹介.pptx
【第28回redmine.tokyo LT】RedmineProjectImporterのご紹介.pptx【第28回redmine.tokyo LT】RedmineProjectImporterのご紹介.pptx
【第28回redmine.tokyo LT】RedmineProjectImporterのご紹介.pptx
Hidehisa Matsutani
 
AIの心臓部を支える力 ― ニューラルネットワークプロセッサの進化と未来.pdf
AIの心臓部を支える力 ― ニューラルネットワークプロセッサの進化と未来.pdfAIの心臓部を支える力 ― ニューラルネットワークプロセッサの進化と未来.pdf
AIの心臓部を支える力 ― ニューラルネットワークプロセッサの進化と未来.pdf
Data Source
 
論文紹介:"Visual Genome:Connecting Language and Vision​Using Crowdsourced Dense I...
論文紹介:"Visual Genome:Connecting Language and Vision​Using Crowdsourced Dense I...論文紹介:"Visual Genome:Connecting Language and Vision​Using Crowdsourced Dense I...
論文紹介:"Visual Genome:Connecting Language and Vision​Using Crowdsourced Dense I...
Toru Tamaki
 
「Technology×Business×生成AI」株式会社CoToMaで未来を作る仲間募集!
「Technology×Business×生成AI」株式会社CoToMaで未来を作る仲間募集!「Technology×Business×生成AI」株式会社CoToMaで未来を作る仲間募集!
「Technology×Business×生成AI」株式会社CoToMaで未来を作る仲間募集!
fujishiman
 
論文紹介:What, when, and where? ​Self-Supervised Spatio-Temporal Grounding​in Unt...
論文紹介:What, when, and where? ​Self-Supervised Spatio-Temporal Grounding​in Unt...論文紹介:What, when, and where? ​Self-Supervised Spatio-Temporal Grounding​in Unt...
論文紹介:What, when, and where? ​Self-Supervised Spatio-Temporal Grounding​in Unt...
Toru Tamaki
 
俺SoC (Laxer Chip, AX1001)の Prolog加速命令.New multiple branch instruction for RIS...
俺SoC (Laxer Chip, AX1001)の Prolog加速命令.New multiple branch instruction for RIS...俺SoC (Laxer Chip, AX1001)の Prolog加速命令.New multiple branch instruction for RIS...
俺SoC (Laxer Chip, AX1001)の Prolog加速命令.New multiple branch instruction for RIS...
たけおか しょうぞう
 
論文紹介:PitcherNet: Powering the Moneyball Evolution in Baseball Video Analytics
論文紹介:PitcherNet: Powering the Moneyball Evolution in Baseball Video Analytics論文紹介:PitcherNet: Powering the Moneyball Evolution in Baseball Video Analytics
論文紹介:PitcherNet: Powering the Moneyball Evolution in Baseball Video Analytics
Toru Tamaki
 

Tortoise gitで日本語ファイル名を使うときのgitの選択について

  • 1. TortoiseGit で日本語ファイル名を 使うときの git の選択について 2010/9/30 NSEG Git 勉強会 ジーワークス 佐藤 潔
  • 2. 動機 ● 今まで TortoiseSVN を使っていたので、やっぱり TortoiseGit 使いたい。 ● 仕様書や資料も一緒にバージョン管理したいので、 日本語ファイル名使いたい。
  • 3. Git の選択? ● TortoiseGit はそれ単独で動くのではない。 ● 外部の Git コマンドを呼び出すための GUI のガワ。 ● だから Git へ受け渡す文字コード問題が発生する。
  • 4. 選択肢 ● git for windows (msysgit) ● Cygwin git ● 日本語ファイル名パッチ版 git for windows (http://tmurakam.org/git/) ちなみに msysgit は msys という Cygwin の派生版上で動く git 。 なのでどれも元は同じ Cygwin 上の git と考えて良い。
  • 5. git for windows (msysgit) ● ファイル名の文字コード : Shift-JIS ● TortoiseGit からは日本語ファイル名が一部通らない。 「構」とか 2 バイト目が「 0x5C 」になる場合、ファイル名は正 しく表示されるが、エラー「 fatal: pathspec ' ・ ' did not match any files 」となる。 ● ファイル名文字コードが Shift-JIS で扱われるため、 Linux など他の環境と混在する場合などはうまく機能しないので、日 本語ファイル名は扱わないほうが良い。
  • 6. Cygwin git ● ファイル名の文字コード : UTF-8 (Cygwin-1.7 以降 ) ● コマンドで叩く分には日本語ファイル名も問題なく扱える。 が、 TortoiseGit からは日本語ファイル名は通らない。 日本語ファイル名の表示も化ける。 ● ファイル名が UTF-8 で扱われるため msysgit のような多環 境との混在での日本語ファイル名問題は起こらない。
  • 7. 日本語ファイル名パッチ版 git for windows ● ファイル名の文字コード : UTF-8 ● TortoiseGit から日本語ファイル名が通り、ファイル名も正し く表示される。 ただ log などを見たときのファイル名は正しく表示されない。 ● ファイル名の扱いが UTF-8 になるようにパッチされているた め、他環境との日本語ファイル名問題は起こらない(と思う)。
  • 8. 比較 ファイル名 他環境との TortoiseGit から 文字コード 日本語ファイル名 日本語ファイル名 git for windows Shift-JIS × △ (msysgit) Cygwin git UTF-8 ○ × 日本語ファイル名 UTF-8 ○? ○ パッチ版 git
  • 9. 結論 TortoiseGit から日本語ファイル名を使うには、 日本語ファイル名パッチ版 git for windows を使うしかない。 でも…  TortoiseGit 自体がダメダメという意見もちょくちょく聞 くのでどうしたもんか。