Processes: Obsidian collaboration
Context
As your aware, I recently started transitioning us to using Obsidian for the Generative Process. I've helped most people get set up and running on forks of the repository here: https://github.com/SoCoDoJo/Generativeprocess
In setting things up I took a safety first approach as the methodology, and doing so adds friction to the collaborative process. While getting Ronen setup we discussed this and decided that it would be better to take a more promiscuous approach to the setup.
Current process
Right now we are automatically push/pulling to our own forks, with pull requests then being required from our individual forks to sync updates with the central repo. This means that additions and changes can be reviewed by a project/repo maintainer - a quality assurance pattern used in open source communities. We did not get to doing this yet but if you don't like the changes suggested below, its still a road you can go down.
Changes
Instead of continuing to set up this structure, myself and Ronen felt that it's perhaps better to go with a simpler and more permissionless approach. We've successfully swam in the deep end and learned a good deal about patterns of open source collaboration. The simplified setup will be a good challenge for anyone looking to apply their skills on their own. If your not comfortable, walk-throughs can be arranged.
The simplified pattern removes the need for forks as we all use the same repo. Everyone in the group has been invited to become a repo maintainer, if you still need this invite please feel free to ask myself or anyone that has already accepted the role (and knows how to change permissions/invite people to Github). Accepting this role, you can push to the org repo directly to add your modifications.
A key change to the workflow is that we will no longer use auto-sync makeing deliberate commitments instead. This is perhaps new territory but pretty easy thanks to the availability of graphical interfaces. Ronen has started using GitKraken which is an aesthetically pleasing alternative to the command line.
Quickstart instructions
Go to the main repository here. Click on the green code button and copy the link. Open your command line and navigate to the folder you wish to clone into just as we did last time. Type `git clone ` and paste the link you copied earlier. This downloads from the main repository onto your local machine. You can open this in Obsidian and make edits. When you are done, you need to save or "commit" your work. This was previously handled by sync but now needs to be done as a deliberate action. How you wish to do this is ultimately up to you but in the short term I suggest installing GitKraken (a graphical interface) to get used to Git in a visual way.
Once you create new notes or make changes in Obsidian you can use GitKraken to `add` them to git, `commit` the changes and `push` them to source (as well as `pulling` updates from others).
It's defiantly worth trying this on your own for practice as I think you can all probably do it, but if these instructions are not sufficient I'm happy to setup a Thursday session and walk everyone through.
Poll Created Mon 8 Nov 2021 12:11PM
Discussing and Collaborating on a GP Closed Sat 13 Nov 2021 2:42PM
I've created a #gp-unfolding channel on discord. May a collaborative unfolding flourish amongst us.
When Cycle4 began, I expressed an intention to initiate a few threads for exploration around money. As I pondered those threads I realized that they were subtle and complex and interdependent. So instead I chose to initiate a new GP which I have tentatively named "Wholocracy." This made it possible for me to both organize my thoughts and share them in a (hopefully) coherent and effective way.
However, my intention remains to offer this into the space as subjects for discussion and collaborative exploration and so I want to address the question that @Jennifer Damashek asked on discord. How to do this?
I want to start by saying that for now, we are not yet ready to do this within Obsidian. The options for commenting there need to be explored and refined and If found useful, protocols will need to be put in place on how to use them.
For now, I want to propose a simple initial protocol for this collaborative exploration
If you have a short thought/question/remark you can post it on a dedicated Discord channel (to be created if this proposal is accepted).
If it is more than a small question and is more likely to become a wider exploration start the conversation on Loomio. You can do this by commenting on an existing thread, starting a new thread, or starting a proposal. Take the time to offer a well-formed and clearly directed seed of conversation. You can then announce this inquiry on the dedicated Discord channel and link to it.
If you identify that something that started on the dedicated Discord channel as a simple question (option 1 above) but has matured into a wider and valuable exploration, please consider upgrading it to a long-form conversation (option 2 above) and redirecting the conversation from Discord to Loomio.
Results
Results | Option | % of points | Voters | |
---|---|---|---|---|
|
Consent | 100.0% | 6 | |
Objection | 0.0% | 0 | ||
Undecided | 0% | 0 |
6 of 6 people have participated (100%)
Ronen Hirsch · Sun 7 Nov 2021 11:42AM
Thank you for this update @Josh Fairhead
You posted this on the larger Microsolidarity group and I assumed that was an error so I moved into the crew space.
The cloned and shared repositories have the same name and so re-cloning will try to do so to the same local folder (that the personal repository was cloned into) and I don't know how that will work out. Maybe it is better to either rename/delete the existing folder? + I already had some new content in the personal-repository clone ... so I made sure to copy that out and paste back into the new core-repo clone.
GitKraken can also do the initial cloning if anyone wants to use that instead of the command line.
To my understanding, anyone who wants to avoid having to deal with pushing updates can still use auto-syncing - at least as a starting point, until the capability and potential of intentional pushing are acquired and understood. To be clear: intentional pushing is better. To anyone who chooses to use auto-sync
I was not aware that we needed to pull to see other people's changes (but now that I think about it - duh!). I checked and found that it is possible to configure the Obsidian-Git plugin to do automatic pulling without pushing. Will I get notifications in GitKraken when there are things for me to pull - this implies that GitKraken does perform some kind of auto-syncing of push/pull requests? If people do use the Obsidian-Git plugin to do auto-pushing, I suggest that it be performed in a low frequency (maybe once every 2 hours) so that it does not create too many push-events into the repository?
ANYONE WHO CHOOSES AUTO-SYNC PLEASE BEWARE:
all the changes you make, including to things that are in other people's personal spaces and the shared space will automatically be updated to the central repository.
Anything you delete will disappear for everyone.
If you move re-arrange files on your own device and naively move what you think are YOUR files out of the clone folder THEY WILL BE DELETED from the repository.
Though your local clone folder is, essentially just a folder on your machine, the presence of GIT associates your local folder with the core repository. When you also enable auto-sync ANYTHING that happens in your local folder will happen in the central repository and to everyone else!
This is probably why this is called "promiscuous" collaboration - it is open and free but you need to be responsible and considerate of everyone else.