TK.

MIOS8/32 repositories now hosted at Github

6 posts in this topic

Hi *,

The MIOS repositories are now hosted at Github:

This should improve collaboration in future, because branching in GIT is much easier.

It's not possible to access the old subversion repositories via SSH anymore, in future changes can only be pushed into the new GIT repositories.

There are tons of documentation how to use GIT on the web, therefore I won't repeat this here. ;)

Just want to mention the general workflow:

  • we use a simplified workflow without develop branch, so: master is the latest
  • everybody who want's to contribute has to create a feature branch, e.g. feature/my_project
  • once you are fine with your changes, create a pull request from your branch into master, and set me as a reviewer
  • I will review your changes, and if they are fine I will integrate them into master
  • meanwhile everybody is able to work with your changes by switching to your feature branch

Currently we've only one branch: feature/mcan (from Bruno)

How to contribute:

  • create a github account (if you don't already have one)
  • register your SSH key in the profile
  • inform me about your account name so that I can add it to the midibox project
  • now you can clone the repository with
    git clone ssh://git@github.com/midibox/mios32
  • Within this repository you can create a branch with:
    git checkout master -b feature/<your-branch-name>
  • You can commit changes with
    git commit .
    resp. "git commit" if you've indexed the files with "git add" before
  • You can push committed changes to github with
    git push

If you are working from a fresh clone, use "git checkout feature/<name>" to select your feature branch

With "git branch -a" you will get an overview about the branches.

There are also various GUIs available to display changes in your local repository, e.g. I prefer "gitk"

Best Regards, Thorsten.

P.S.: Wiki and ucapps documentation will be updated in some weeks once the new workflow is settled ;)

Share this post


Link to post
Share on other sites

Thank you Thorsten for also migrating the MCAN branch.
In general, this is good news because the latest version of XCODE no longer supports SVN. Maybe that's why you moved it.

Thank you so much.

Have a good night.
Bruno

Share this post


Link to post
Share on other sites

It's a nice idea, though SVN was still fine for a passive user like me. 

This was discussed elsewhere, but just to be clear: you (TK.) prefer to keep control of the master line and review all changes, and you will keep the same license terms as non-commercial for personal use only (no GPL/CC-BY etc.)? This is not a request for you to change anything you don't want to of course.

Share this post


Link to post
Share on other sites
2 hours ago, Antichambre said:

In general, this is good news because the latest version of XCODE no longer supports SVN. Maybe that's why you moved it.

No, I moved because I noticed that your MCAN activity doesn't really fit with the subversion work flow anymore. ;)

27 minutes ago, latigid on said:

This was discussed elsewhere, but just to be clear: you (TK.) prefer to keep control of the master line and review all changes, and you will keep the same license terms as non-commercial for personal use only (no GPL/CC-BY etc.)? This is not a request for you to change anything you don't want to of course.

yes

Best Regards, Thorsten.

Share this post


Link to post
Share on other sites
8 minutes ago, TK. said:

No, I moved because I noticed that your MCAN activity doesn't really fit with the subversion work flow anymore. ;)

Thank you but even if the workflow is now more suitable I'm not sure to be more skilled with the new format :decayed:
I don't know why but a repo stays something obscure for me... I hope git is easier...:cheers:

Best regards
Bruno

Share this post


Link to post
Share on other sites
18 hours ago, TK. said:

The MIOS repositories are now hosted at Github:

aha excellent, I agree that this should make collaboration easier....

10 hours ago, Antichambre said:

I hope git is easier

Heheh, define easier ;)

I'm no Git expert, but if it helps, here's how I'd imagine doing things:

Make a directory for this repo i.e.

cd ~
mkdir mios_stuff
cd mios_stuff

Clone the repo to your local dir:

git clone https://github.com/midibox/mios32.git

Let's check to see which branches are available in the new repo:

cd mios32/
~/mios_stuff/mios32$ git branch -av
* master                                      79292db corrected comments in source_me_* files
  remotes/origin/HEAD                         -> origin/master
  remotes/origin/feature/juce_5_4_3_migration 5e8148f MIOS Studio: updated release script
  remotes/origin/feature/mcan                 b7b78c2 corrected mios32_* namespace
  remotes/origin/master                       79292db corrected comments in source_me_* files

I used the -av option to show all of the branches on the remote repo. Note the * by master, that shows which branch you have checked out at the moment. It looks like TK has set you up the feature/mcan branch. Let's assume you want to do some work on that, so switch to the MCAN branch like this:

~/mios_stuff/mios32$ git checkout feature/mcan
Branch feature/mcan set up to track remote branch feature/mcan from origin.
Switched to a new branch 'feature/mcan'

Here is where things are a bit different to SVN. I'd try and explain it but you'd be better reading this:

https://git-scm.com/book/en/v2/Git-Branching-Branches-in-a-Nutshell

Then basically you can do your work, doing regular commits. Those go in to the branch you have checked out currently. Then when you are ready to share them with others you push to the repo, ensuring that your push goes to the feature/mcan branch. Eventually, once we know that everything you have done in feature/mcan is OK to add to the full mios32 then someone has to merge the changes in feature/mcan branch into the master branch. Then finally everyone can use MCAN and blow their minds with so many MIDI ports to play with ;)

I also recommend looking up how Git stash works (I find that invaluable) :)

Sorry for the slightly long post, and apologies in advance for things that a Git expert would tell you are wrong. But that's how I plan to use it so far!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now