Search Unity

Svn Tools - Fast and easy version control from inside your Unity editor

Discussion in 'Assets and Asset Store' started by Visual-Design-Cafe, Jun 29, 2015.

  1. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721


    Prevent conflicts and out-of-date files with fast and easy version control from inside your Unity editor

    View on the Asset Store!

    Svn Tools is an editor extension to improve your workflow with SVN and Unity. It shows you all the information you need in your project window and it enables you to access the most used features of SVN from inside your Unity editor.

    Key Features
    • Icon overlay for file status​
    • Use SVN commands in the project window​
    • Auto-check the repository for new changes​
    • Warning before modifying out-of-date files​
    • Automatically lock assets when editing​
    • Auto-add/delete files when moved or deleted in Unity​
    • Tested in projects with over 44,000 files​
    Additional links

    Product Website | Documentation | Asset Store


    A few screenshots






     
    Last edited: Jan 18, 2017
    theANMATOR2b likes this.
  2. imtrobin

    imtrobin

    Joined:
    Nov 30, 2009
    Posts:
    1,548
    Does it handle SVN Move Versioned?
     
  3. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Hi imtrobin,

    The current version supports the following commands directly from the project window:
    Update, Commit, Revert, Show Log, Cleanup

    I will look into it to see if SVN Move can be added to the next version
     
  4. MarioRuiz

    MarioRuiz

    Joined:
    Nov 7, 2009
    Posts:
    161
    Hi,have you defined a price tag yet?
     
  5. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Hi MarioRuiz,

    Svn Tools will be available for $10!
     
  6. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Svn Tools has now been submitted to the Asset Store, after tweaking it a little bit to ensure it follows all the guidelines.
    It should be available within 5 to 10 business days!
     
    MarioRuiz likes this.
  7. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
  8. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    When moving files around in Unity editor, what is the best procedure to update SVN?
     
  9. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Hi hippocoder,

    When you move a file or rename it in Unity, the old file(name) will be marked as missing and the new file(name) will be added and marked as unversioned.
    The best way to move/rename files is to use the SVN commands Move or Rename. This will keep the version history of the file intact.
    This is currently not supported from the Unity Editor but will be added as soon as possible. (Moving files currently works in the development version, but moving folders still causes problems)

    For now it is best to delete the old files when doing your next commit and then add the new files:
     
  10. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    A small update has been submitted to fix a few bugs and is currently pending review.
    For a list of all changes please view the changelog here

    Update: The new version has been accepted and is now available for download
     
    Last edited: Aug 13, 2015
  11. Alec-Slayden

    Alec-Slayden

    Joined:
    Dec 16, 2008
    Posts:
    101
  12. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Hi Alec Slayden,

    Thank you for the message, I will look into SmartSVN and see if it can be supported in the next version!
     
  13. wolfen231

    wolfen231

    Joined:
    Apr 22, 2014
    Posts:
    402
    Last edited: Sep 16, 2015
  14. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Hi wolfen231,

    Can you please check if any of the following works:

    In the preferences window (Edit > Preferences > SVN Tools)
    1. Can you check if Svn Tools is enabled. (first option in the window: 'enable SVN Tools')
    2. Did you choose the location of an SVN executable? There should be a warning in both the preferences window and the console if you didn't. (choosing a client location is not needed for the overlay icons, only the svn location)
    3. Is the icon scale larger than 0?

    4. Is there any error displayed in the console? If so, then please copy the error message and post it here.
    5. Right click in the project window > SVN > Refresh. This should refresh the cache and display the icons
     
  15. wolfen231

    wolfen231

    Joined:
    Apr 22, 2014
    Posts:
    402
    Actually I take that back. Maybe I am configuring wrong. I have it set to use TortoiseProc.exe. Is that not correct? I have no svn.exe. Also I just don't see anything still.

    Like this is what I see now.
    upload_2015-9-16_17-21-24.png
     
  16. wolfen231

    wolfen231

    Joined:
    Apr 22, 2014
    Posts:
    402
    1. It is enabled.
    2. I chose the TortoiseProc.exe (as I did not select to install the command line.
    2a. I installed latest version and had a command line installed. But I did not change tortoiseproc selection. (now its working)
    3. Definiteley larger than 0.
    4.No errors or warnings related to the SVN tool. All project warnings from my content and scripts.
    5. Yeah. That works too.

    Everything is working now once I updated the version of svn.

    I ask again. Is the command line svn.exe required? Or is the TortoiseProc.exe safe to use? I have used it, it was submitting stuff when the icons were broken. So I assume it is safe but I want to make sure it's not something that could be a problem in the future.

    Other than that...a ll seems well. =)
     
  17. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Good to hear that everything is working now.

    The command line (svn.exe) is required for the overlay icons and other functionality. It is the process that directly communicates with the svn repository. It should not be possible to choose TortoiseProc.exe for this, but it looks like the path is not validated entirely. I will make sure to add a better explanation and better warnings for the next version.

    TortoiseProc.exe is used to directly access the client functionality to commit/revert/etc. However it is not possible to retrieve all the information required for the overlay with just TortoiseProc
     
  18. wolfen231

    wolfen231

    Joined:
    Apr 22, 2014
    Posts:
    402
    Noted. Ill switch it over to the svn.exe then.

    Great tool though. So needed this! Tired of switching over to explorer for this stuff haha. Thanks for the quick responses!
     
  19. wolfen231

    wolfen231

    Joined:
    Apr 22, 2014
    Posts:
    402
    Ok. Sorry for the double posting, but now after choosing the SVN.exe (which is the one I chose on install as the optional command line tools) it says this is an invalid client selected.
     

    Attached Files:

  20. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    svn.exe should be selected for the 'svn location' and TortoiseProc.exe should be selected for the 'client location'.

    Screenshot_3.jpg
     
  21. Novack

    Novack

    Joined:
    Oct 28, 2009
    Posts:
    844
    Hello, there. I use svn with unity, but Im yet to found a definitive solution for this.
    This extension looks pretty slick! I have a couple of questions.

    Do you plan to have a version with access to the source code?
    Do you have an ETA until move/rename of files be added?
    Do you have plans to implement a history/log dialog?
    How about implementing "CheckOut", "Add", "Ignore", and "Compare" (for text assets) commands?

    Whats the memmory and performance footprint of SVN Tools on the Unity Editor (I went through some undesirable experiences with likewise extensions).

    Maybe a demo version limited to a short number of files to test functionality would be great. For the tag price, I would just buy it, but I dont feel comfortable not having the source (essentially I depend on you to implement everything I would need).

    Thanks for any help with my questions, keep up the good work!
     
    Last edited: Sep 17, 2015
  22. wolfen231

    wolfen231

    Joined:
    Apr 22, 2014
    Posts:
    402
    Oohhhhhhhhhhhh. Ok. I will give that a shot then. That makes sense. I was wondering why there was two locations for SVN executables. I guess I misread that. Will update with results.

    Edit: Yes that does the trick. Thanks so much! Great tool!!!!
     
    Last edited: Sep 17, 2015
    Visual-Design-Cafe likes this.
  23. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Currently there is no plan to release the source code. To make all the code usable for everyone, document everything and give support for it would take up too much time. And I can't afford that at the moment.

    There is not ETA yet because of some difficulties with Unity and SVN. It is currently (partially) working in the development version, but it is not stable yet. The main reason for this is that both Unity and SVN require a move command to keep all the references intact. This means that you will have to move every file twice, once for Unity and once for SVN. It is okay to do this for files, but folders have a high possibility of causing errors. Unity does not provide a lot of callbacks when moving files, so at the moment I am still looking for a stable workaround.

    Yes, plans are made and I am currently in the design process to see how this can be implemented in the best way.

    Already partially added in the development version ("Add", "Ignore") and all of them are scheduled for the next release.

    Svn Tools has been heavily optimized to make sure it does not cause any problems in development.
    The performance for the main features are as follows:
    - Overlay takes 0.3~0.5 ms whenever the project window is repainted
    - Status update starts a background process to get the repository status. This takes about 0.2 to 5 seconds depending on the size of your project, but has almost no influence on the editor performance
    - Svn Tools only updates once per second to prevent useless checks when nothing has changed.
    - Internally there is a cache stored of the entire project, however there are only indices and paths in this cache and it doesn't take up more than a few MB of your memory.
     
    Novack likes this.
  24. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    A new version of Svn Tools has been submitted to the Asset Store and should be available soon!

    These are the biggest changes in this new version:
    • Added SVN commands: Add, Remove, Ignore, Compare to the project window menu
    • Files are now automatically marked as Deleted in SVN when deleted in Unity
    • Meta files are now automatically included when Committing, Updating, Adding, Removing, Etc. a file
    • Project Settings are now included in a commit/update
    Or check the changelog for a complete list of changes.
     
  25. Bullets42

    Bullets42

    Joined:
    Jun 26, 2012
    Posts:
    13
    Hello,

    Lovely product here I am interested but just had a couple pre sale questions. Will this work with prefabs and scenes if not any future plans for this? I also noticed it works with windows that covers windows 10? Anyhow it looks great I am about to prepare a project via Tortoise SVN and I seen this so I am very interested to buy it asap! :)

    EDIT:
    Also was curious will this work ok with Unity 5.2.1f1 (64-bit)?
     
    Last edited: Sep 26, 2015
  26. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Hi there,

    What kind of features are you expecting to work with prefabs and scenes? Right now they work as any other asset: they show up with their state icon in the project window and you can use version control like with any other asset.
    The only addition to prefabs is that they also show up in the hierarchy window if they are out-of-date (when there is a new version available in the repository).

    It has not been tested on Windows 10 yet but I can't think of any reason why it shouldn't work, and I haven't heard of any issues so far.

    The latest version of Unity that has been tested is 5.1.1. I am currently downloading and installing the latest version of Unity to check if it is compatible.
     
  27. Bullets42

    Bullets42

    Joined:
    Jun 26, 2012
    Posts:
    13
    Sounds great thanks for the reply! Well it sounds just perfect if its not working just yet in 5.2 I can wait. I actually bought it but I haven't gotten around to testing anything out few other assets also. I can't imagine anything but a 5 Star rating once I get around to trying it out :) this is something I needed! Anyhow thanks again!
     
  28. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Thank you for already purchasing it! I just tested Svn Tools in 5.2 for you and it seems to work just fine, so there should be nothing to worry about.
     
    Bullets42 likes this.
  29. jerome

    jerome

    Joined:
    Oct 13, 2008
    Posts:
    53
    Sound great, It should be nice to provide a way to auto lock/unlock scene file when he is open in the editor !
    And implement move function too but I know it can be a mess with SVN if it's not done in the right order ... Update / Commit then if all is sync then we can move
     
  30. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Hi jerome,
    Thank you for your interest!
    I can give you good news about this: already working on it! It is scheduled for the next release.

    Same for this, working on it. However this has been a 'work-in-progress' feature for several weeks already because moving files within Unity and SVN is, like you said, a big mess. Getting closer to something stable though.
     
  31. Uli_Okm

    Uli_Okm

    Joined:
    Jul 10, 2012
    Posts:
    95
    Hi!
    Is there any special reason that this asset don't work on OSX?
     
  32. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Hi Uli_Okm,
    Svn Tools relies heavily on the SVN Command Line, it is used for all direct communication with your repository. However the way the command line works is different on Windows and OSX. It should be absolutely no problem to change this part of the code for OSX and make it work. But at the moment I do not have access to a development machine running OSX, so unfortunately there is no way to develop and test an OSX version for now.
     
  33. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Version 1.0.3 has been submitted to the Asset Store and is now pending review!

    A few of the major additions include:
    • Added SVN commands: Lock, Unlock to the project window menu
    • Added support for external files and folders
    • Files automatically lock when opened or modified
    • Files are now automatically marked as 'Added' or 'Deleted' when moved or deleted in Unity
    • Improved overall support for meta files
    for the entire list of changes please view the online changelog

    Edit: the package has been accepted and is now available for download
     
    Last edited: Oct 8, 2015
    Novack likes this.
  34. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Svn Tools just had a major update to version 1.1.0!
    A lot of improvements have been made in the newest version of Svn Tools. Some of the major changes include:
    • Released Svn Tools Lite: includes all the core functionality for free
    • Easy setup process: When imported in a new project, a setup window will automatically open to setup your project for version control
    • Full support for the icon overlay in the hierarchy window
    • Improved performance
    • For a full list of changes, please view the online changelog
     
  35. Deleted User

    Deleted User

    Guest

    Hi Ben, Thank you for your feedback. The main goal of the Lite version is to give you a more convenient way to interact with SVN (through the Project Window) and to show you an icon overlay to keep you better informed about the status of your files. Besides this, you will also be notified of new changes in the repository made by other users. If you need more features for working in a team (like automatic locking) then I recommend to get the full version.

    If you think that some more features are necessary for this Lite version then feel free to write a post on the forum thread (or send an email) and I will see what I can do for you.

    Hi, I'll reply to this feedback here.

    Personally, I do find the bare essentials for a product like this to have use over Tortoise SVN to be the feature that asks the user to lock a file before modification. Everything else such as, checking for repository updates, and the asset overlays, I can live without(and did in Unreal 4). This is my opinion, so others might disagree.

    Now, this product is free, so I can't complain about any of that, but what bothers me is you seemed to have raised the price of the full version because of the release of the lite version. The problem with this is I don't think the lite version covers a big enough subset of customers who would have bought the original product(before the price change), so the people who needed the original version before now have to pay more for no reason.
     
    Last edited by a moderator: Nov 7, 2015
  36. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Hi Ben, you definitely are making a good point. I will try to explain the reason why these features where chosen and not the locking of files (and other features):

    The Lite version is aimed at single users and/or very small teams while the full version is aimed at the needs of larger teams. Therefore the main features such as direct SVN access in the project window, icon overlay and checking the repository for changes were selected for single users.
    These seemed to be the most useful because other features, like locking files, are less needed for single users (no need to lock a file if you are the only user modifying it).
    However, if experience shows that some of the currently disabled features are considered to be a must-have for single users and small teams then I will definitely consider to add them to the Lite version.

    As for the price change: the new price was decided based on the new features added in the latest update and after comparing Svn Tools to other products currently available. The Lite version also had an influence, but was not the main reason to change anything. I will of course keep in mind the balance between quality/price/content and continue to find the right balance between these.
     
  37. Usmith

    Usmith

    Joined:
    Apr 7, 2013
    Posts:
    20
    Unfortunately, this tool dose not support OSX.
     
  38. jwinn

    jwinn

    Joined:
    Sep 1, 2012
    Posts:
    88
    I have a few questions:
    1. How does SVN Tools differ from UVC (Unity Version Control)?
    2. Have you finished the moving of folders mentioned several times earlier in this thread? The problem I am having with UVC is related to moving large-ish (not too big) folders and not being able to do so because of errors. Still no ETA?
    3. What is the workflow like of SVN Tools? Any video available of how it works? Some of the screenshots look nice, but I'd like to know how and when one uses it within the editor; whether this is easy and visual and not time consuming, or whether I have to do a lot of manual SVN commands.
    Thanks.
     
  39. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Hi jwinn,
    1. The main difference is that Svn Tools is designed to improve your workflow with SVN and provide more than only a replacement of an external SVN Client. This includes more automated functionality, such as autmatic locking, adding/removing files, etc. and moving SVN to the background as much as possible.
    2. Partially, renaming and moving files works and will automatically remove the old files and add the new ones. However I noticed some exceptions when moving large amounts of files. I am currently working on a solution for this, you can expect an update within 2 weeks.
    3. Svn Tools basically consists of 3 parts: The overlay, a quick menu and the background process.
      • The overlay shows the status of your files in the project window and inspector. It refreshes automatically and regularly checks the repository for changes.
      • A quick menu can be accessed by right-clicking in the project window, here you can execute the most used commands like: update, commit, revert, compare, etc. Some commands open an SVN client (TortoiseSVN), you will mostly notice this when updating/committing. This is done to rely on the already strong and stable features of TortoiseSVN for merging and comparing files.
      • A background process will check the changes you make and will automatically lock files, warn you for possible conflicts, add/remove files, etc.
    There is currently no video available, however you can download the free Lite version to see if it matches with your expectations.
     
    Novack likes this.
  40. barrenjunk

    barrenjunk

    Joined:
    Jul 10, 2013
    Posts:
    6
    Greetings,
    When moving files in the Unity editor does this tool do an SVN move operation or does it do a delete then re-add in the new location? Our biggest problem right now is that when we move assets around the project we have to do the delete / add dance and it seems to bloat the repository size. Doing an SVN move when the client is closed, making sure to include all .metadata files seems to work but having something that handled this from within the client would be ideal.
     
  41. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Hi barrenjunk,
    At the moment Svn Tools uses delete/add when a file is moved or renamed. Copying a file with SVN Move is possible to add as a feature when only single files are used and in a clean repository. However things can get messy very quickly and the current backend is not flexible enough to handle all cases. At the moment the backend is being rewritten to be more flexible and allow for more complex commands. The current aim is to get this ready before the end of this year, hopefully this will include SVN Move, but I cannot give you an accurate ETA just yet for this feature.
     
  42. trialnterrorgames

    trialnterrorgames

    Joined:
    Feb 20, 2014
    Posts:
    58
    I'm trying out the Lite version now, and everything seems to be working fine, except for this error:
    Which is strange, because I can commit, update, and do everything I want to do from within the project window...

    I've set my svn up in a local folder (within GDrive). Maybe this is the cause of the issue?

    Like I said, everything works fine, but it's just annoying as it outputs this error every 2 minutes or so, so after working on a project for 4 hours my Console is filled with this error...
     
  43. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Hi Syndias,
    Thank you for letting me know about this problem. That error is a direct output of any errors received from the SVN Command Line Client. There can be a few different reasons why SVN can't connect to the repository. Can I ask if you can see any icon overlay in your project window? If you do then I have a possible cause of the problem. I will try to reproduce the problem on my own pc, if I can't find the problem then I will send you a debug version of Svn Tools so you can see more specific error messages.

    For now you can probably reduce this problem by changing the 'Check Repository Status' to 'Every hour' in the preferences window.
     
  44. trialnterrorgames

    trialnterrorgames

    Joined:
    Feb 20, 2014
    Posts:
    58
    Hi,

    I do have overlay icons in my project window. I've set it to check every hour (why no "never" option?)

    Thanks for the fast reply!

    *edit*: a new error occured this time:
     
    Last edited: Dec 28, 2015
  45. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Hi,
    I have tried to reproduce your problem but everything seems to work fine here, using a local repository within GDrive. Can you send me a PM with some more details about which version of Unity and Svn Tools you are using? Then I will see if I can enable some debugging features for you.
     
  46. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Hi everyone,

    A small notice for all new users of Svn Tools:
    In December a new version of Subversion has been released (1.9), unfortunately repositories created with this version are not compatibly with older Subversion clients. The current download links in the setup of Svn Tools still link to version 1.8 of Subversion. If you install Subversion 1.8 and create any repositories with a newer version (or with TortoiseSVN) then it is likely that you will get a 'Could not connect to repository' error in your console. Please download and install the latest version of Subversion if you see this error appearing in your console. A new version of Svn Tools with updated download links will be available soon.

    @Syndias if you are still having issues with your local repository then this is probably the reason, please check your Subversion and install the latest version if it is outdated.

    Here is a download link for the SlikSVN binary package for everyone who wants to update their Subversion client: https://sliksvn.com/download/
     
    Novack likes this.
  47. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    A new version of Svn Tools (v1.1.1) is now available on the Asset Store. The main changes are focused on the back end to provide a more stable and flexible tool as well as adding requested features regarding locks. For a full list of changes please view the changelog: https://www.visualdesigncafe.com/products/svntools/changelog/

    Edit: A small fix has been submitted to prevent the Version Control Settings object leaking when the scene is saved. The fix should be available for download soon.
     
    Last edited: Jan 20, 2016
    Novack likes this.
  48. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Hi, we're mainly interested in this plugin for the file-locking ability, if it works how it sounds. So questions:

    Let's say we have one user who hits Apply on a prefab or saves a Scene. Will either of those prevent another user somehow from modifying that prefab or Scene, or at least let them know it has been modified by another user before they bother making changes by showing something visual? That's something we currently don't have at all using TortoiseSVN from Windows.
     
  49. Visual-Design-Cafe

    Visual-Design-Cafe

    Joined:
    May 23, 2015
    Posts:
    721
    Hi jerotas,

    Yes, if you open/apply/save a prefab or scene Svn Tools will automatically lock it for you. In the preferences you can change which types of files should be locked automatically and when (on open/after modifying). When a file is locked you will see a lock icon in front of the asset in the project window, along with a strike-through line if the file is locked by someone else.

    When you try to open the locked file you will get a warning dialog with the message that the file is locked by someone else. Then you can either choose to cancel opening the file or to break the lock.

    If you hover over the lock icon you will see a tooltip showing the name of the user who locked the file.

    See the 'locked by me' and 'locked by another user' icons
     
  50. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Sounds good, although unsure what you mean by "open a prefab". That doesn't sound like it should lock in that case to me unless you actually make a change and save...