subversion-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Julian Foad <julianf...@apache.org>
Subject Re: Server-side SavePoints [was: Subversion Design Contribution Question]
Date Fri, 03 Nov 2017 10:06:33 GMT
Daniel J. Lacks, PhD wrote:
> [...]  I
> am interested to help, at this point I want to know what is the best way 
> for me to do that.  For example, how to start: brainstorming, 
> collaborating (hosting a meeting, chat channel, or opening an issue 
> ticket), or just do it?   What format: Wiki, Word document, PowerPoint 
> presentation, etc.?  How much research should I do: you mentioned 
> client-side tool integration (TortoiseSVN, etc.) and other tools for 
> comparison (Git, Perforce, etc.)?  My assumption is you are perhaps 
> looking to take a step back from what is already posted about SavePoints 
> and perhaps address a design that includes client side and server side 
> use cases, scenarios, and approaches.  Then at some point I assume it is 
> reviewed and versioned, then someone can decide what to implement now or 
> in the future.

[TL;DR: Meta-discussion about how best to contribute.]

The reply you sent a few minutes before this one, in which you describe 
your real life use cases and wishes, is a fantastic way to make 
progress. Personally although I have used Subversion and other VCS in 
several different settings, I have not tried such a diverse distributed 
scenario as you are describing and so your description of that is really 
helpful.

Next I would encourage you to try sketching some possible UIs and, as 
much as possible, diagrams of how it all could work. (I find the visual 
approach extremely much more powerful than writing, and it is 
unfortunate that it is so difficult to do on computer. Attaching a photo 
of a hand-drawn sketch works much better for me.) I am currently doing 
this for local checkpointing and every little bit that I draw brings 
some previously un-thought-of aspect to my attention.

We don't have a standard process for collaborating on a medium to large 
feature beyond posting to this dev@ mailing list. Feel free to write up 
in other formats and attach (if small) or post links to them where that 
works better than plain text email, keeping in mind that open 
easy-to-transfer formats are strongly preferred so maybe not MS Word 
etc. The Wiki is a useful central place because its longevity is in our 
control (unlike third-party web sites) but I find the Wiki clumsy for 
anything more than a few paragraphs and a few links.

You are correct that I am looking to take a step back from what is 
already posted about SavePoints and Checkpoints and Shelving. In 
general, anything in our issue tracker and wiki is best taken as an idea 
to think about rather than a plan that has been decided. We would 
informally review the proposals (here on dev@) according to however much 
interest the current community can collectively bring to it. In the end, 
as an open source project, whoever steps up to do the work ultimately 
gets to decide what they are willing to do; the community as a whole 
gets to advise and guide and ultimately choose what goes into an 
official release.

In practice, though, it is extremely helpful to have a well thought-out 
design, and rationale, that somebody else has taken the trouble to 
prepare. This can make the difference between somebody ever or never 
stepping up to implement it.

At the same time as taking a step back to think about the wider picture, 
in order to get something done in the short term I am implementing a 
very simple initial version of local shelving and checkpointing, from 
which to get some experience and feedback from others about how they 
should evolve. That is the other direction you start from -- a simple 
implementation, e.g. scripts around the existing 'svn' commands -- to 
demonstrate what you want to accomplish and in what respects they lack 
important usability or capabilities.

Lastly I want to say thank you for bringing your enthusiasm and 
experience! This project only happens by people like you doing it, and 
it is heartening to hear from you. Please stick around!

- Julian

Mime
View raw message