gitにExcelファイルあげちゃった。そして差分も見たいです。
gitにExcelファイルあげちゃった。そして差分も見たいです。
エンジニア以外にもgithubを使い出しているところが増えつつありますが、
このような要望が少なくありません。
エンジニアとしては、それはExcelがちょっと・・・という感じかもしれませんが
非エンジニアとしてはExcelが自分の仕事の表現手段、というか
やはり操作感は他のツールとは別格かと思います。
そこにエンジニア目線で別のツールを押しつけるのもどうかと思ったりもします。
※別のツールを提供した方が効率が上がるケースももちろんあるので、その場合は提供した方が良いです。
ということで、Excelファイルをgitにあげて管理したい、しかも差分も見たいと言った場合
gitの設定を少しいじると雑ですが差分が出るようにはなります。
macの場合
前提条件
GOでコンパイル出来る環境
使用するもの
https://github.com/tokuhirom/git-xlsx-textconv
インストール
mkdir ~/git-xlsx-textconv export GOPATH=~/git-xlsx-textconv go get github.com/tokuhirom/git-xlsx-textconv echo "export PATH=$PATH:~/git-xlsx-textconv/bin"
~/.gitconfig
を開きます。
[[diff "xlsx"]] textconv = git-xlsx-textconv
git cloneしたリポジトリの直下に
.gitattributeファイルを作成します。
*.xlsx diff=xlsx
を追記します。
これでxlsxの結果が比較できるようになりました。
row追加
[hoge@localhost repo][master]$ git diff 3377e46819bbe6abb2a46fb43a5989c87cd714e3^..3377e46819bbe6abb2a46fb43a5989c87cd714e3 diff --git a/sample.xlsx b/sample.xlsx index aaa1203..51aa625 100644 --- a/sample.xlsx +++ b/sample.xlsx @@ -2,3 +2,4 @@ [テストシート1] test2 [テストシート1] test3 [テストシート1] test4 +[テストシート1] test5
row削除
[gendosu@localhost repo][master]$ git diff 5855f51a6c8ea901016f1961cc5bcf5ecc09f976^..5855f51a6c8ea901016f1961cc5bcf5ecc09f976 diff --git a/sample.xlsx b/sample.xlsx index 51aa625..645bd53 100644 --- a/sample.xlsx +++ b/sample.xlsx @@ -1,5 +1,4 @@ [テストシート1] test1 [テストシート1] test2 [テストシート1] test3 -[テストシート1] test4 [テストシート1] test5
シート名変更
[gendosu@localhost repo][master]$ git diff 8ccb9789f8ffc6ac62e8464664a9e9c02d770989^..8ccb9789f8ffc6ac62e8464664a9e9c02d770989 diff --git a/sample.xlsx b/sample.xlsx index 645bd53..183f7dc 100644 --- a/sample.xlsx +++ b/sample.xlsx @@ -1,4 +1,4 @@ -[テストシート1] test1 -[テストシート1] test2 -[テストシート1] test3 -[テストシート1] test5 +[testシート1] test1 +[testシート1] test2 +[testシート1] test3 +[testシート1] test5
GOがコンパイル出来ない環境、Windows環境の場合のは、後日