Osagitfilter Save

Filter to put OSA languages (AppleScript, JavaScript) into git, as if they where plain text-files

Project README

osagitfilter

Filter to put OSA languages into a git-repository. So you can put your .scpt-file (AppleScript, JavaScript) into your git-repository, and get full textual diff support.

Installation

Either clone this repository, or download the latest release and unzip it to a folder where you want to install it.

Configure the filter by running the following command:

./setup.sh configure

For every reporistory you want to use it, put the line *.scpt filter=osa in the gitattributes of your repository. Do this by running the command below in the root of your repository:

echo "*.scpt filter=osa" >> .gitattributes

Extra's

If you want to add your own git configuration, use the following configure command:

./setup.sh configure --no-git

To reset the configuration, run this command:

./setup.sh reset

If you have trouble with the script, switch on logging with:

./setup.sh configure --git-log

Logging can be found in ~/Library/Logs/Catsdeep/osagitfilter.log and can be easy inspected with Console.app.

Some git-clients, like GitHub Desktop, can be quite chatty so log files grow quite fast. With the following command you can create a new log file, while preserving the old ones:

./setup.sh rotate

Default, it prevents from accidently committing AppleScript files with Debugging Mode (from AppleScript Debugger) switched on. Run osagitfilter --help to see more options.

I've setup a demo repository with different .scpt-files.

Problems

If you want to (re-)apply osagitfilter to a repository (for example, if you already added your binary .scpt file to git, but want to use osagitfilter), execute the following statement:

git add --renormalize .

Credits

Based on this answer by Daniel Trebbien on stackoverflow and help from guys on the Script Debugger Forum.

Open Source Agenda is not affiliated with "Osagitfilter" Project. README Source: doekman/osagitfilter
Stars
33
Open Issues
4
Last Commit
2 years ago
License
MIT

Open Source Agenda Badge

Open Source Agenda Rating