Suggestion: Putting P1V Code on GitHub / Shared Code Repo.
6581
Posts: 132
Hi,
I would suggest we set up a shared GitHub repository where everybody can push his
P1V modifications, toys, tools etc. to make everything a bit more clear?
Code in Forums spread along dozens of pages gets usually lost VERY quickly..
I would suggest we set up a shared GitHub repository where everybody can push his
P1V modifications, toys, tools etc. to make everything a bit more clear?
Code in Forums spread along dozens of pages gets usually lost VERY quickly..
Comments
This seems to be the main Github account, and is a fork of Seairth's repository.
One of the most important benefits of Github is that efforts of multiple people can be combined: If many developers all post zip files to the forum and they're all based on the Parallax release, it will be a massive undertaking for a user to combine multiple sources together to have the benefits of multiple improvements.
With Github however, the changes are linked to each other in a way that makes sense (if done right). Multiple people can work on their own changes, and multiple changes by multiple developers are continuously integrated with each other. If everyone starts creating their own repositories, it will be just as impossible to integrate changes as it would be with separate ZIP files in the forum.
With the current Github setup, everyone can still work in their own forks and branches (forks are basically Git branches with automatic access rights control from the Github website), and no-one is obligated to submit their work to anyone else; however all the online branches can be accessed so if everyone would post their work in their own branches, one (or a few) developers who are sufficiently motivated, can merge the work from various developers together. It seems that for now, I am that developer.
As you should know, Heater set up a Github repository back in August 2014, and Mindrobots forked it to add the BeMicroCV sources. Then I made some more improvements in my fork, and I'm in the process of integrating lots of work from multiple developers. I hope to create an integrated branch that has one set of source files where all the important improvements are combined, in such a way that everyone can download a zip or create a fork and build a P1V that's as close to a Propeller (the chip) as the hardware allows. Then by defining a few macros you can enable the various features that everyone's been working on.
Integrating changes via Github is much easier than integrating code posted on the forums: Github integrations are usually automatic and only take a few minutes. Integrations of forum-posted code already takes an hour or more per change, especially if everyone keeps using the original Parallax release to base their changes upon. It will get harder and harder to integrate changes posted in the forum, especially if the documentation doesn't clearly explain how the changes were made. For now, forum-based changes are still manageable and the Github repo isn't in the state where I want it to be, and I'm working on changing it so that changes will be as easy as possible (for me and for others). At some point in time, integrating changes from the forum will just be too time-consuming and I won't do them anymore: if you're not in Github, you'll be out.
It's inevitable that Github will be the place to go for the latest P1V developments all in one place.
===Jac
https://www.atlassian.com/git/tutorials/comparing-workflows