├── .editorconfig ├── logo.png ├── assets ├── icon.png ├── icons │ ├── commit.png │ ├── pull.png │ ├── push.png │ └── branches.png └── delete.svg ├── example ├── .sketchignore ├── ScreenCast.gif ├── example.sketch ├── ScreenShotBad.png ├── ScreenShotNice.png ├── .exportedArtboards │ └── example │ │ ├── Rectangle@0.5x.png │ │ └── Artboard 1@0.5x.png └── example-boards.md ├── .babelrc ├── .gitsketchrc ├── .gitignore ├── Resources ├── branches.html ├── preferences.html ├── preferences.css ├── branches.css ├── branches.js └── preferences.js ├── src ├── commands │ ├── Pull.js │ ├── Push.js │ ├── OpenTerminal.js │ ├── Add.js │ ├── Export.js │ ├── autoExportOnSave.js │ ├── Init.js │ ├── Commit.js │ ├── Preferences.js │ └── Branches.js ├── preferences.js ├── manifest.json ├── common.js └── exportArtboards.js ├── .eslintrc.yml ├── docs ├── sketchignore.md ├── keyboard-shortcut.md ├── git-commands.md ├── README.md ├── git-lfs.md ├── FAQ.md └── getting-started.md ├── webpack.skpm.config.js ├── .appcast.xml ├── LICENSE ├── README.md ├── package.json ├── .github └── CONTRIBUTING.md └── CHANGELOG.md /.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | indent_style = space 5 | indent_size = 2 -------------------------------------------------------------------------------- /logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mathieudutour/git-sketch-plugin/HEAD/logo.png -------------------------------------------------------------------------------- /assets/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mathieudutour/git-sketch-plugin/HEAD/assets/icon.png -------------------------------------------------------------------------------- /example/.sketchignore: -------------------------------------------------------------------------------- 1 | Page 1/ignored 2 | 3 | Page 1/ignored-regex-(.*) 4 | 5 | Ignored page/(.*) 6 | -------------------------------------------------------------------------------- /assets/icons/commit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mathieudutour/git-sketch-plugin/HEAD/assets/icons/commit.png -------------------------------------------------------------------------------- /assets/icons/pull.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mathieudutour/git-sketch-plugin/HEAD/assets/icons/pull.png -------------------------------------------------------------------------------- /assets/icons/push.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mathieudutour/git-sketch-plugin/HEAD/assets/icons/push.png -------------------------------------------------------------------------------- /example/ScreenCast.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mathieudutour/git-sketch-plugin/HEAD/example/ScreenCast.gif -------------------------------------------------------------------------------- /example/example.sketch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mathieudutour/git-sketch-plugin/HEAD/example/example.sketch -------------------------------------------------------------------------------- /assets/icons/branches.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mathieudutour/git-sketch-plugin/HEAD/assets/icons/branches.png -------------------------------------------------------------------------------- /example/ScreenShotBad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mathieudutour/git-sketch-plugin/HEAD/example/ScreenShotBad.png -------------------------------------------------------------------------------- /example/ScreenShotNice.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mathieudutour/git-sketch-plugin/HEAD/example/ScreenShotNice.png -------------------------------------------------------------------------------- /.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "plugins": [ 3 | [ 4 | "transform-react-jsx", 5 | { 6 | "pragma": "h" 7 | } 8 | ] 9 | ] 10 | } 11 | -------------------------------------------------------------------------------- /example/.exportedArtboards/example/Rectangle@0.5x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mathieudutour/git-sketch-plugin/HEAD/example/.exportedArtboards/example/Rectangle@0.5x.png -------------------------------------------------------------------------------- /example/.exportedArtboards/example/Artboard 1@0.5x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mathieudutour/git-sketch-plugin/HEAD/example/.exportedArtboards/example/Artboard 1@0.5x.png -------------------------------------------------------------------------------- /.gitsketchrc: -------------------------------------------------------------------------------- 1 | { 2 | "exportFolder": ".exportedArtboards", 3 | "exportFormat": "png", 4 | "exportScale": "0.5", 5 | "includeOverviewFile": false, 6 | "autoExportOnSave": false 7 | } 8 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # build artefacts 2 | Git.sketchplugin 3 | 4 | # npm 5 | node_modules 6 | 7 | # Logs 8 | logs 9 | *.log 10 | npm-debug.log* 11 | 12 | # Optional npm cache directory 13 | .npm 14 | -------------------------------------------------------------------------------- /Resources/branches.html: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | 5 |
6 |
7 | # git-sketch-plugin
8 |
9 | [](https://github.com/mathieudutour/git-sketch-plugin/releases)
10 | [](http://bit.ly/SketchRunnerWebsite)
11 |
12 | A Git client built right into [Sketch](http://www.bohemiancoding.com/sketch). Generate [pretty diffs](https://github.com/mathieudutour/git-sketch-plugin/pull/1/files) so that everybody knows what are the changes!
13 |
14 | From ...
15 | 
16 |
17 | ... To
18 | 
19 |
20 | 
21 |
22 | ## Requirements
23 |
24 | - [Sketch](http://sketchapp.com/) >= 3.4 (**not** with the sandboxed version ie from the App Store).
25 | - [Git](https://git-scm.com/) (coming with OS X so you shouldn't have to do anything)
26 | - [Xcode Command Line Tools](http://osxdaily.com/2014/02/12/install-command-line-tools-mac-os-x/)
27 |
28 | ## Installation
29 |
30 | ### From a release (simplest)
31 |
32 | - [Download](https://github.com/mathieudutour/git-sketch-plugin/releases/latest) the latest release of the plugin
33 | - Un-zip
34 | - Double-click on Git.sketchplugin
35 |
36 | ### From the sources
37 |
38 | - Clone the repo
39 | - Install the dependencies (`npm install`)
40 | - Build (`npm run build`)
41 | - Double-click on Git.sketchplugin
42 |
43 | ## Documentation
44 |
45 | For a Getting started guide, FAQ, etc. check out our [docs](https://github.com/mathieudutour/git-sketch-plugin/tree/master/docs)!
46 |
47 | ## Want to contribute?
48 |
49 | Anyone can help make this project better - check out our [Contributing guide](/.github/CONTRIBUTING.md)!
50 |
--------------------------------------------------------------------------------
/Resources/branches.js:
--------------------------------------------------------------------------------
1 | import { h, render, Component } from "preact";
2 |
3 | function cleanBranchName(name) {
4 | return name ? name.replace("(B[m", "") : name;
5 | }
6 |
7 | class Branch extends Component {
8 | render({ name, selected }) {
9 | return (
10 |