# Piston: anyone know how to convert existing checked in plugins?

**URL:** <https://www.ruby-forum.com/t/piston-anyone-know-how-to-convert-existing-checked-in-plugins/125373>\
**Category:** Rails\
**Created:** [January 8, 2008, 5:48pm UTC](https://www.ruby-forum.com/t/piston-anyone-know-how-to-convert-existing-checked-in-plugins/125373 "2008-01-08T17:48:28Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![tharrison](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/9e8a1a/32.png) [@tharrison](https://www.ruby-forum.com/u/tharrison)\
**Post date:** [January 8, 2008, 5:48pm UTC](https://www.ruby-forum.com/t/piston-anyone-know-how-to-convert-existing-checked-in-plugins/125373/1 "2008-01-08T17:48:28Z")

</div>

We’re moving to use the piston gem to manage our plugins, which is a  
nice alternative to the svn:externals approach to keeping your plugins  
up to date.

We already have added the plugins we use to svn. Is there a (simple)  
way to add them to piston’s management?

(piston’s import command only works if the plugin is not already under  
source control)  
(piston’s convert command only works if you are moving from using  
svn:externals)

Thanks –

Tom

---

<div class="post-metadata">

**Author:** ![tharrison](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/9e8a1a/32.png) [@tharrison](https://www.ruby-forum.com/u/tharrison)\
**Post date:** [January 14, 2008, 1:06am UTC](https://www.ruby-forum.com/t/piston-anyone-know-how-to-convert-existing-checked-in-plugins/125373/2 "2008-01-14T01:06:53Z")

</div>

IMHO, you should really delete a directory (i.e.  
vendor/plugins/some\_plugin)  
from svn first if you want to manage it with piston.  
Since you are talking about a plugin, that really shouldn’t be a big  
deal  
(plus you have the revision history anyway).

If you have customizations I would just reintegrate them into the code  
after  
it’s been imported with piston. Then you use piston to manage any  
merges  
when you upgrade the plugin down the line…

Cheers,  
Walter McGinnis  
[http://katipo.co.nz/](http://katipo.co.nz/)

---

<div class="post-metadata">

**Author:** ![tharrison](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/9e8a1a/32.png) [@tharrison](https://www.ruby-forum.com/u/tharrison)\
**Post date:** [January 14, 2008, 1:16am UTC](https://www.ruby-forum.com/t/piston-anyone-know-how-to-convert-existing-checked-in-plugins/125373/3 "2008-01-14T01:16:49Z")

</div>

And when I say “delete a directory… from svn”, I mean “svn remove  
path/to/the/directory” or whatever.  
Cheers,  
Walter

---

<div class="post-metadata">

**Author:** ![tharrison](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/9e8a1a/32.png) [@tharrison](https://www.ruby-forum.com/u/tharrison)\
**Post date:** [January 14, 2008, 1:34am UTC](https://www.ruby-forum.com/t/piston-anyone-know-how-to-convert-existing-checked-in-plugins/125373/4 "2008-01-14T01:34:21Z")

</div>

## piston convert

Ryan B.

> **[frozenplague.net](http://www.frozenplague.net)**
>
> This domain may be for sale!

Feel free to add me to MSN and/or GTalk as this email.

---

<div class="post-metadata">

**Author:** ![tharrison](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/9e8a1a/32.png) [@tharrison](https://www.ruby-forum.com/u/tharrison)\
**Post date:** [January 14, 2008, 2:01am UTC](https://www.ruby-forum.com/t/piston-anyone-know-how-to-convert-existing-checked-in-plugins/125373/5 "2008-01-14T02:01:51Z")

</div>

Ryan, that will only handle svn:externals, not directories that have  
been  
submitted to full version control as thearrison seems to have done.  
Cheers,  
Walter

---

<div class="post-metadata">

**Author:** ![tharrison](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/9e8a1a/32.png) [@tharrison](https://www.ruby-forum.com/u/tharrison)\
**Post date:** [January 14, 2008, 2:59am UTC](https://www.ruby-forum.com/t/piston-anyone-know-how-to-convert-existing-checked-in-plugins/125373/6 "2008-01-14T02:59:40Z")

</div>

On Tuesday 08 January 2008, tharrison wrote:

> We’re moving to use the piston gem to manage our plugins, which is a  
> nice alternative to the svn:externals approach to keeping your  
> plugins up to date.
> 
> We already have added the plugins we use to svn. Is there a (simple)  
> way to add them to piston’s management?

Simple? Safe? I don’t think so. Piston sets four svn properties on the  
root directory of the imported directory

$ svn proplist  
Properties on ‘.’:  
piston:root  
piston:local-revision  
piston:uuid  
piston:remote-revision

You can set these properties yourself using svn propset, the trick, of  
course is, to find the right values. Here’s what I do: Create a  
throwaway project and piston import the plugins there. Look at the  
properties piston sets, excluding piston:local-revision, and set them  
on your existing plugins. As for piston:local-revision, I’m not  
entirely sure of the semantics, but I think it is the local revision  
when piston last did anything on the directory.

Michael

–  
Michael S.  
[mailto:removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
[http://www.schuerig.de/michael/](http://www.schuerig.de/michael/)
