デザインファイルをGit LFSで管理する方法 + コミット時にSketchのファイルを自動書き出し
git-lfs インストール
$ brew install git-lfs
新しいgitリポジトリ作成
もうある場合はやらないで良い
$ git init
git-lfsで管理したいファイルを追記
$ git lfs track "*.psd"
$ git lfs track "*.ai"
$ git lfs track "*.sketch"
$ git lfs track "*.png"
$ git lfs track "*.jpg"
追記されると.gitattributes
が作成されてます
$ cat .gitattributes
*.psd filter=lfs diff=lfs merge=lfs -text
*.ai filter=lfs diff=lfs merge=lfs -text
*.sketch filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.jpg filter=lfs diff=lfs merge=lfs -text
コミットしてプッシュ
あとは普通のgitと同じようにコミットしてプッシュするだけ
SourceTreeでも普通にできました。
コミット時にSketchのファイルを自動で画像で書き出してコミットするスクリプト
sketchtoolインストール
$ /Applications/Sketch.app/Contents/Resources/sketchtool/install.sh
$ sketchtool -v
sketchtool Version 42 (36781)
sketchtoolで書き出してみる
$ sketchtool export artboards pc.sketch --output=output/pc
pre-commit.shを作成
管理しやすいようにscripts/
の下に置きます。
これでrootにある、sketchファイルが自動で書き出されるようになる。
scripts/pre-commit.sh
for filename in *.sketch; do
sketchtool export artboards $filename --output=output/${filename%.*}
done
git add ./output/.
githookに設定する
さっき作ったスクリプトをgithookのpre-commit
で実行されるように設定します。
$ echo 'sh scripts/pre-commit.sh' > .git/hooks/pre-commit
$ chmod +x .git/hooks/pre-commit
普通にコミット
$ git commit
Exported 01_top.png
Exported 02_news.png
Exported 03_about.png
Exported 04_contact.png
....
$ tree
.
├── README.md
├── pc.sketch
├── output
│ ├── pc
│ │ ├── 01_top.png
│ │ ├── 02_news.png
│ │ ├── 03_about.png
│ │ ├── 04_contact.png
おわり
便利。
git-lfs
とgithook
だけ設定してあげて、SourceTreeでデザイナーさんでも使えそう!
Author And Source
この問題について(デザインファイルをGit LFSで管理する方法 + コミット時にSketchのファイルを自動書き出し), 我々は、より多くの情報をここで見つけました https://qiita.com/narikei/items/79a89c608502f35dc3a1著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .