I have a question about the workflow that is used to maintain and develop a skin.

I have 2 objectives :

Set up a repository which will be updated with svn

Develop locally the skin

Right now, I understand how to develop the skin locally, by just using a text editor and then "svn commit", etc... The skin repo is then composed of the usual 720p directory, media, etc....

My problem comes when I try to figure out how to set up the repository that could be used inside XBMC, where the skin would be updated automatically. By looking at Hitcher and Pecinkos repository, the skins are zipped inside their own directory.

So, I guess my question is how do you develop locally (i.e. text editor), then create a zip file (through the use of svn command?) and then commit ("svn commit") this zip file to your repository?

Thanks!

edit - Also, how do one create an addons.xml.md5 ? Is there a command?

edit 2- Alternatively, could the skin in the repos for XBMC be with the usual skin directory layout, not in a zip file?

As much as I hate to say it TheUni was right, I prefer GIT these days when developing skins because it basically lets you have a local repository on your PC with all the changes committed locally and separated and being able to be reverted (undo) one at a time or all together. If you decide later you don't like something.

You can even "branch" your skin of locally do some real crazy stuff to it while keeping the original "master" version untouched, then either merge the changes back into master or dump the whole lot. All locally on your PC.

Then when your ready you can push it somewhere on the web like github.

This is how I maintain the PVR versions of my skin I have the Master branch which is the main skin in the eden repos and then a pvr branch that has the changes I need for pvr and every time I push a new version to eden I merge all the changes I did from master into the pvr branch. And its pretty much all auto and I don't have to worry about any of it none of this pesky copy and paste stuff then guessing where to put it git knows

echo Build Complete - Scroll Up to check for errors.
echo Final build is located in the BUILD directory
pause

I then ZIP up the skin folder (note: must be ZIP) and add the revision number to them (ie skin.xeebo-3.0.0.zip and changelog-3.0.0.txt). [This can probably be done through the batch file but I don't know that much.]

heh I went a little more generic and advanced I guess than that hitcher my folder layout looks like this
where each one of the ticks is the git a separate git repo https://github.com/JezzX
and the texturepacker dir holds the exe files to make the xbt.

The shortcuts like "Build PM3.HD" is a shortcut to build.bat with the folder name passed as a paramater eg:
but you could easily type "BuildSkin.bat PM3.HD" at the command line and it would do the same, I'm just lazy and do the double click in windows

And anyway in the end out pops a folder inside "BUILD" with the compiled skin

Wow, nice posts guys! I think this kind of information should be more visible on the forums or the wiki. The workflow of a project can be hard on newcomers. I've spent 3-4 days just to learn all the small technical steps needed to publish code (through svn in my case) and now I see that some of you don't even use these tools!

Having this information could be an incentive to some people that are not confident on this kind of matter.

So much to learn before even beginning to do some small skinning! When I complete my workflow, I'll post what I do! I'm pretty sure I'll be less advanced than what you guys do.

By looking at your scripts, it seems that you all develop on Windows right?

Jezz_X Wrote:This is how I maintain the PVR versions of my skin I have the Master branch which is the main skin in the eden repos and then a pvr branch that has the changes I need for pvr and every time I push a new version to eden I merge all the changes I did from master into the pvr branch. And its pretty much all auto and I don't have to worry about any of it none of this pesky copy and paste stuff then guessing where to put it git knows

So you're saying that we shouldn't add pvr xml's to the skins in the official repo?