SlideShare une entreprise Scribd logo
1  sur  15
社内勉強会(2017/03/08)
Diff(ファイル比較)ツールの紹介
自己紹介
 名前: 坂口 昌己(サカグチ マサミ)
 所属:株式会社キャッチアップ
 趣味: 工作全般、ラジオ、温泉、
車などなど。
あいかわらずプラモデルにはまってます。
 よく使う言語とか: PHP
CakePHPとか。主にbaserCMSを使った開発しています。
PerlやVisual BasicとかC++とかC#とかアセンブラとかもできますよ。
Copyright Catchup, Inc. All Rights Reserved.
2
最近作ったやつ
アジェンダ
ファイル/フォルダの比較ツールってなに?
クライアントで動作するツールの紹介
オンラインで動作するツールの紹介
コマンドラインで動作するツールの紹介
まとめ(本日のおすすめ)
Copyright Catchup, Inc. All Rights Reserved.
3
Diff(ファイル比較)ってなに?
 Diff(ディフ)とは Difference(ディファレンス)の略で、2つのファイ
ルを比較するソフトウェア。ファイルを比較し、差異の有無を検出しま
す。
 プログラムのソースコードなんかの変更箇所を見やすくしたりするツー
ルです。
 ツールによってはファイルの中身だけではなく、フォルダ単位で比較な
どが出来たりします。
 以前に自分が変更した内容を調べたり、自分以外の人が変更した箇所を
見つけたりできます。
 Diffコマンドで大抵の事は足りてしまうけど、GUIもあると何かと便利
ですよ。
Copyright Catchup, Inc. All Rights Reserved.
4
Mac で使えるGUI
 FileMerge
 Xcodeインストールで一緒に入るツール。多分みんなのMacに入っている。
 Finderで『アプリケーション』⇒『Xcode』を右クリック⇒『パッケージの内容を表示』で見つかる
ようです。
 日本語が化けるとかあったけど最近はどうなんだろうか。(使ってない)
Copyright Catchup, Inc. All Rights Reserved.
5
Mac で使えるGUI
 CompareMerge
 FileMerge の拡張らしいので入れてみました。
 しかし私のマシンでは動作しなかったです。(OSのバージョン?)
 https://sourceforge.net/projects/comparemergenosandbox/
 AppStoreの有料版は動作するようですが未確認です。
 参考: http://d.hatena.ne.jp/soratomo0714/20150826/p1
Copyright Catchup, Inc. All Rights Reserved.
6
Mac で使えるGUI
 Kaleidoscope ( http://www.kaleidoscopeapp.com/ )
 有料(シェアウェア)だけど、なかなか便利です。
 実際に使ってみました。
 フォルダ単位での比較もできます。
 ファイルの差分表示だけでなく、マージも出来ます。
 時々ファイル一覧が表示されないバグっぽい動作しますが便利。
Copyright Catchup, Inc. All Rights Reserved.
7
Windowで使えるGUI
 WinMerge
 http://www.geocities.co.jp/SiliconValley-SanJose/8165/winmerge.html
 今のところたぶん最強。
 これの動作の為だけにMacの仮想環境でWindows立ち上げてます…。
 ファイルだけでなくフォルダ単位での比較もできます。
 もちろんファイルのマージも出来ます。
 改行コードの違いとかもチェックできます。
 2つの比較だけでなく3つのファイルでの比較なんかも出来るようです
が、あまり使わないです。
 プラグインで機能拡張出来るようです。
Copyright Catchup, Inc. All Rights Reserved.
8
Mac / Win 何方でも使えるGUI
 NetBeans
 実はファイルの比較、マージが出来るって知ってました?
 Git管理外のファイルや、サーバ上のファイルをバックアップしたあとに比
較とかしたりするときにべんりです。
 phpStorm
 同様のことが出来る、しかも超強力らしいけど、使ってないので…。
 http://necomesi.jp/blog/tsmd/posts/87
 PHPのIDE乗り換えようかな…。
Copyright Catchup, Inc. All Rights Reserved.
9
Mac / Win 何方でも使えるGUI
 SublimeText3 + Sublimerge 3
 パッケージ入れると、みんな大好きSublimeでもDIFFできます。
 以前は有料で回数制限だった日数制限があった気がするのですが、
今は制限ないみたい。(ちがったらすみません)
 クリップボード内のテキストとも比較できてなかなか便利です。
 エディタなんで動作が軽いのがちょっとした時に使えて良いです。
Copyright Catchup, Inc. All Rights Reserved.
10
オンラインで使えるGUI
 http://www.diffchecker.com
 内場さんに教えていただきました。
 (この資料つくるきっかけになりました)
 機能としてはテキストの比較のみ
 マージは出来ないとのことでした。
Copyright Catchup, Inc. All Rights Reserved.
11
オンラインで使えるGUI
 http://mergely.com/editor
 テキストの比較だけでなくて、マージも出来るようです!
 JSライブラリがGitHubで公開されているようです。
 http://mergely.com/about
 https://github.com/wickedest/Mergely
 ライセンス形態が色々みたいなのでチェック必要かも
 http://mergely.com/license
 baserCMSのrevesionプラグインに表示だけでも導入してみると面白いかも!
Copyright Catchup, Inc. All Rights Reserved.
12
コマンドラインのツール
 diffコマンド
 言わずと知れた
 git diff
 tig で見やすいかも https://jonas.github.io/tig/
 Macなら brew install tig でインストールできますよ。
 Sourcetreeで十分とか言わないで(><)
 svn diff + colordiff ( http://blog.kaburk.com/os/linux/colordiff.html )
Copyright Catchup, Inc. All Rights Reserved.
13
まとめ:本日のオススメ
 WinMerge (32bit版のみ)
+ プラグイン(Word、Excel、PowerPoint、pdf)
 なんと、テキスト以外の文書も比較できる。
 クライアントからありがたく贈られてきたアレなExcel仕様書なんかが
前とどこが変わっているのかさっぱりな時に超便利。
 (とはいっても、テキストの比較のみなので、画像にされるとなんともですが。)
 Macで EasyWine + WinMergeで試したけど、WinMergeは動作してもプラ
グインまでは無理でした。
 やっぱり Mac + VirtualBox (Windows + WinMerge)なのかな…。
Copyright Catchup, Inc. All Rights Reserved.
14
ありがとうございました!!!
Copyright Catchup, Inc. All Rights Reserved.
15

Contenu connexe

Similaire à Diff(ファイル比較)ツールの紹介【勉強会資料】

DevOpsが引き金となるインフラエンジニアの進撃
DevOpsが引き金となるインフラエンジニアの進撃DevOpsが引き金となるインフラエンジニアの進撃
DevOpsが引き金となるインフラエンジニアの進撃
Teruo Adachi
 
達人出版会のご紹介(技術編)
達人出版会のご紹介(技術編)達人出版会のご紹介(技術編)
達人出版会のご紹介(技術編)
masayoshi takahashi
 
Ossを使ったazureでのdev ops
Ossを使ったazureでのdev opsOssを使ったazureでのdev ops
Ossを使ったazureでのdev ops
裕貴 荒井
 
オフラインファーストの思想と実践
オフラインファーストの思想と実践オフラインファーストの思想と実践
オフラインファーストの思想と実践
Shumpei Shiraishi
 

Similaire à Diff(ファイル比較)ツールの紹介【勉強会資料】 (20)

WordPress サイト制作におけるデプロイメントを考える ~Git とデプロイメントサービスの活用~
WordPress サイト制作におけるデプロイメントを考える ~Git とデプロイメントサービスの活用~WordPress サイト制作におけるデプロイメントを考える ~Git とデプロイメントサービスの活用~
WordPress サイト制作におけるデプロイメントを考える ~Git とデプロイメントサービスの活用~
 
DevOpsが引き金となるインフラエンジニアの進撃
DevOpsが引き金となるインフラエンジニアの進撃DevOpsが引き金となるインフラエンジニアの進撃
DevOpsが引き金となるインフラエンジニアの進撃
 
NanoA
NanoANanoA
NanoA
 
ownCloudについて
ownCloudについてownCloudについて
ownCloudについて
 
達人出版会のご紹介(技術編)
達人出版会のご紹介(技術編)達人出版会のご紹介(技術編)
達人出版会のご紹介(技術編)
 
Ossを使ったazureでのdev ops
Ossを使ったazureでのdev opsOssを使ったazureでのdev ops
Ossを使ったazureでのdev ops
 
【OSC2011広島】共有アプリで遊ぼう!(日本Red5ユーザー会)
【OSC2011広島】共有アプリで遊ぼう!(日本Red5ユーザー会)【OSC2011広島】共有アプリで遊ぼう!(日本Red5ユーザー会)
【OSC2011広島】共有アプリで遊ぼう!(日本Red5ユーザー会)
 
PFIセミナー 2013/02/28 「プログラミング言語の今」
PFIセミナー 2013/02/28 「プログラミング言語の今」PFIセミナー 2013/02/28 「プログラミング言語の今」
PFIセミナー 2013/02/28 「プログラミング言語の今」
 
第2回HTML5企業Webシステム開発セミナー hifive紹介資料
第2回HTML5企業Webシステム開発セミナー hifive紹介資料第2回HTML5企業Webシステム開発セミナー hifive紹介資料
第2回HTML5企業Webシステム開発セミナー hifive紹介資料
 
アイデアを形にする ③3時間でアプリ公開!ゼロからのプログラミング講座
アイデアを形にする  ③3時間でアプリ公開!ゼロからのプログラミング講座アイデアを形にする  ③3時間でアプリ公開!ゼロからのプログラミング講座
アイデアを形にする ③3時間でアプリ公開!ゼロからのプログラミング講座
 
SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~
SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~
SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~
 
開発者からみたTensor flow
開発者からみたTensor flow開発者からみたTensor flow
開発者からみたTensor flow
 
遅いクエリと向き合う仕組み #CybozuMeetup
遅いクエリと向き合う仕組み #CybozuMeetup遅いクエリと向き合う仕組み #CybozuMeetup
遅いクエリと向き合う仕組み #CybozuMeetup
 
HTML5時代のネット動画技術〜良い子悪い子普通の子(増補改訂版)
HTML5時代のネット動画技術〜良い子悪い子普通の子(増補改訂版)HTML5時代のネット動画技術〜良い子悪い子普通の子(増補改訂版)
HTML5時代のネット動画技術〜良い子悪い子普通の子(増補改訂版)
 
オフラインファーストの思想と実践
オフラインファーストの思想と実践オフラインファーストの思想と実践
オフラインファーストの思想と実践
 
12 総合演習Word Pressの利用
12 総合演習Word Pressの利用12 総合演習Word Pressの利用
12 総合演習Word Pressの利用
 
CakePHP × 国産! baserCMS3の深化と今後の拡がり
CakePHP × 国産! baserCMS3の深化と今後の拡がりCakePHP × 国産! baserCMS3の深化と今後の拡がり
CakePHP × 国産! baserCMS3の深化と今後の拡がり
 
大規模ソーシャルゲームを支える技術~PHP+MySQLを使った高負荷対策~
大規模ソーシャルゲームを支える技術~PHP+MySQLを使った高負荷対策~大規模ソーシャルゲームを支える技術~PHP+MySQLを使った高負荷対策~
大規模ソーシャルゲームを支える技術~PHP+MySQLを使った高負荷対策~
 
デザイナーのためのはじめてPHP ~Codex、どう使いこなす?~
デザイナーのためのはじめてPHP ~Codex、どう使いこなす?~デザイナーのためのはじめてPHP ~Codex、どう使いこなす?~
デザイナーのためのはじめてPHP ~Codex、どう使いこなす?~
 
var dumpを使わないWordPress開発フロー
var dumpを使わないWordPress開発フローvar dumpを使わないWordPress開発フロー
var dumpを使わないWordPress開発フロー
 

Plus de 株式会社キャッチアップ

Plus de 株式会社キャッチアップ (9)

キャッチアップ レクリエーション 2018
キャッチアップ レクリエーション 2018キャッチアップ レクリエーション 2018
キャッチアップ レクリエーション 2018
 
DDのはなし【勉強会資料】
DDのはなし【勉強会資料】 DDのはなし【勉強会資料】
DDのはなし【勉強会資料】
 
気になったQiita記事【勉強会資料】
気になったQiita記事【勉強会資料】 気になったQiita記事【勉強会資料】
気になったQiita記事【勉強会資料】
 
Dockerについて【勉強会資料】
Dockerについて【勉強会資料】 Dockerについて【勉強会資料】
Dockerについて【勉強会資料】
 
Let's Encryptについて話す【勉強会資料】
Let's Encryptについて話す【勉強会資料】 Let's Encryptについて話す【勉強会資料】
Let's Encryptについて話す【勉強会資料】
 
データベース定義書とER図【勉強会資料】
データベース定義書とER図【勉強会資料】 データベース定義書とER図【勉強会資料】
データベース定義書とER図【勉強会資料】
 
Javascriptのデザインパターン【勉強会資料】
Javascriptのデザインパターン【勉強会資料】 Javascriptのデザインパターン【勉強会資料】
Javascriptのデザインパターン【勉強会資料】
 
baserCMSのキャッシュの仕組み~もうキャッシュでハマらない!!~【勉強会資料】
baserCMSのキャッシュの仕組み~もうキャッシュでハマらない!!~【勉強会資料】baserCMSのキャッシュの仕組み~もうキャッシュでハマらない!!~【勉強会資料】
baserCMSのキャッシュの仕組み~もうキャッシュでハマらない!!~【勉強会資料】
 
ローカル環境のテスト自動化【勉強会資料】
ローカル環境のテスト自動化【勉強会資料】ローカル環境のテスト自動化【勉強会資料】
ローカル環境のテスト自動化【勉強会資料】
 

Dernier

Dernier (10)

Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 

Diff(ファイル比較)ツールの紹介【勉強会資料】