• This repository has been archived on 20/Apr/2020
  • Stars
    star
    19
  • Rank 1,124,199 (Top 23 %)
  • Language
    C#
  • Created almost 9 years ago
  • Updated over 8 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Unity plugin for switching build targets, git branches without endless assets reimport. Not maintained anymore.

Unity Library Switcher

Unity Library Switcher is a Unity3d plugin for switching build targets and git branches without the burden of assets reimporting.

Install

In order to install UnityLibrarySwitcher you have two options. First one is to download unitypackage file and open it. Second option is to clone this repository or download sources and copy UnityProject/Assets/UnityLibrarySwitcher folder to your project assets folder. Just donโ€™t forget to add LibrarySwitcherCache folder to .gitignore file.

For Windows users this plugin is working but not as perfect as on OS X. UnityLibrarySwitcher needs path to bash or sh that already is configured to work with git. By default it assumes that you have installed GitHub Client to C:\Program Files (x86)\Git. In case itโ€™s not what you are using - feel free to change following line in MonoBasher.cs.

private static string ShellPath = @"C:\Program Files (x86)\Git\bin\sh";

In case you want to improve things on Windows - pull requests are highly appreciated.

How it works

You have two actions:

  1. switch build target
  2. switch git branch

Both actions are available from the plugin window, which is accessible from Window/Library Switcher menu.

images/screenshot1.png

Library folder is cached for every (branch, target) pair. When you perform any action, the plugin will cache Library folder for current (branch, target) pair and then replace Library folder by the cached library of selected (branch, target) pair if it exists. To make things work faster plugin copies Library folder only in case you are moving to the (branch, target) pair that wasnโ€™t cached before. If it was already cached, then plugin just moves directories around. All cached Library folders are stored in LibrarySwitcherCache folder in unity project root directory. (branch, target) pairโ€™s Library folder is stored at LibrarySwitcherCache/branch/target.

images/in_action.gif

Limitations

  • Due to the implementation details you should change build target or git branch only from the plugin window. Otherwise you will run into unnecessary imports.
  • Branch switching only works with locally existing branches.

Contributing

Pull requests, feature requests are warmly welcome!

Issues / Tasks

Please, see Issues section.

More reading

You can find more information about this project in this blog post.

More Repositories

1

homebrew-emacs-plus

Emacs Plus formulae for the Homebrew package manager
Ruby
2,143
star
2

vulpea

A collection of functions for note taking based on `org` and `org-roam`.
Emacs Lisp
222
star
3

flyspell-correct

Distraction-free words correction with flyspell via selected interface.
Emacs Lisp
196
star
4

environment

dotfiles
Emacs Lisp
121
star
5

elpa-mirror

Mirror for some Emacs package archives
Emacs Lisp
96
star
6

dotbot-brew

Install brew packages using dotbot
Python
42
star
7

vino

It's your cellar, your dear cantina.
Emacs Lisp
36
star
8

counsel-osx-app

Launch OSX applications via ivy interface
Emacs Lisp
24
star
9

git-config-manager

Manage git repository configurations with ease
Haskell
8
star
10

mirror-elpa

(To) mirror Emacs Lisp Package Archive(s)
Shell
8
star
11

d12frosted.io

Personal site
Haskell
8
star
12

orgability

Reading list manager for Emacs with offline access support.
Emacs Lisp
7
star
13

publicatorg

Make your vulpea notes public
Emacs Lisp
5
star
14

fancy-yank

apply transformation upon yanking
Emacs Lisp
4
star
15

emacs-addiction-mode

M-x doctor instead of C-x C-c
Emacs Lisp
4
star
16

barberry.io

Emacs Lisp
4
star
17

emacs-ukrainian-input-method

Ukrainian macOS-like input method
Emacs Lisp
4
star
18

org-drawer-list

Tame your lists in a drawer
Emacs Lisp
3
star
19

emacs-plus-basis

Emacs Lisp
3
star
20

CanonicalPath

Abstract data type for canonical paths with some pretty operations. Not maintained anymore.
Haskell
3
star
21

env-extra

Safe helpers for accessing and modifying environment variables
Haskell
2
star
22

talks

TeX
2
star
23

d12frosted

1
star
24

path-extra

Path helpers for my personal projects
Haskell
1
star
25

bomberman-player

Haskell
1
star
26

fish-mode

Major mode for editing fish shell scripts
Emacs Lisp
1
star