some help on github workflow

vincent3569 Member, Translator
hi all

I wish to use github to manage my themes.
After some tests, I am unable to do what I want to.

I want to do that :
- only have a master branch
- do a global commit at every release of my theme
- generate archives zip at each release

in some word, something very close to zenphoto workflow...

but actualy, I am unable to do that and the only way to suit may needs is to create a new branch at each release.

can you explain how to generate archives as you did with github ?

thanks for your help.

Comments

  • acrylian Administrator, Developer
    First, since you have several themes you should have one repository for each.
    GitHub is a bit abstract and more than svn. The master is the stream of the development. Branches are a bit special

    But I think you wish to create versions like Theme v.1.4.4.3 ? You do that on GitHub by tagging a special point in the stream. Example:
    https://github.com/zenphoto/zenphoto/tree/zenphoto-1.4.4.3

    Is that what you mean?
  • vincent3569 Member, Translator
    yes, that's what I want to do.
    I have a look on tags, I can create tag from prompt (git tag -a '1.0' -m '1.0' for example) in local.
    But I don't understand how to generate a zip archive from this tag and how to publish this archive on github.

    fyi, I am working on a PC, with Github for Windows
  • acrylian Administrator, Developer
    Sorry, I am on Mac and even if I would use the official Git client it seems to be quite different between Win and Mac.

    Actually you don't need to publish the archive. Once you selected a tag on the GitHub page you get it if you click on the "zip" button on the GitHub page.
  • vincent3569 Member, Translator
    maybe sbillard do something when he generates a tag on local ?
    nothing is magic is this world...
  • You should look at our development repository. There we have script files that will set the tag on a branch. This is what we use to mark the releases like 1.4.4.3, etc. There are two versions of the scripts files, one Windows batch and one for Unix style shell scripts.

    These must be done from the "shell" which you can access from the tools menu of the Windows client.

    What we do for Zenphoto is have a master branch where bug fixes go and a development branch (currently the 1.4.5 branch) where new features go. It is important that you regularly merge the master branch to the development branch when you have made bug fixes in the master so that you do not get the two branches too far out of sync.

    There is a wiki page on our development process and one on hints for using Git.
  • vincent3569 Member, Translator
    thanks sbillard

    I want to keep it simple :
    - only a master branch per themes
    - have a tag for each release of themes
    (the dev branch of my themes stay in local)

    If I understand the wiki and tag.bat, the things I have to do are :
    `
    git tag -a -m "theme release xxx"
    git push --tags
    `
    I will have a look
  • That should work.
  • vincent3569 Member, Translator
    works great.
    what's a pitty that tags functionalities are only allowed from github shell :-s
  • acrylian Administrator, Developer
    That is a matter of the client. Mine does allow tagging. Mabye try another:
    http://git-scm.com/downloads/guis

    Git itself is a free version control system and GitHub actually only a provider.
  • Agreed that the GUI should be extended. You can make comments at https://github.com/contact. Maybe you should add your voice to asking for this type extension of the GUI client.
  • acrylian Administrator, Developer
    I would try another client first. By no means you have to use the official one. I use my one specifically because the official Mac client is even more bare bones than the Windows one.
Sign In or Register to comment.