Open RaananHadar opened 3 years ago
@RaananHadar Thank you for opening this feedback! I think many of these suggestions are centered around making pachctl
more usable. In particular I've seen the pachctl push
feedback suggested before, so I'm glad you've captured it here in this issue.
If the team makes a usability pass at pachctl in the future, this feedback will be helpful. Thank you!
What is the goal / desired outcome? A killer capability of Pachyderm is being git for data. Pachyderm can really simplify getting the right data to the user and back while elegantly coping with complexities of cloud technologies. This has many benefits:
With that in mind, almost everybody knows git. And there are some finely grained day to day patterns that git users are accustomed to, which are not available in Pachyderm. Being able to have this will open many opportunities:
An easy example is cloning and pushing. Assuming that we have an
images
repo with 3 files:A user wants to get some data, doing a simple change and pushing back when finished.
Today the user needs to do:
I would envision a user doing the following:
This is syntactic sugar, but is simpler and will be used quite frequently. Also, with a possible check against hashes, Pachyderm can be smart enough to pull only files that changed.
Lets assume that a user performed a change (I made a simple one, but it can be a complex one too!) the data now looks like this:
Now the user is satisfied with the changes and wants to put the data back in the repo as it is, similar to git. They want to create a new commit that only contains files that are pushed from a local directory. This can be done with the following commands:
Again, not as elegant. I really believe a lot of users would appreciate being able to do:
And again, Pachyderm can be smart enough to push only the changes.
Is there an alternative way to do this? yes.
pachctl mount/unmount
. Lets discuss it:pachctl mount
does some port forwarding behind the scenes, it can be more fragile and a bit slower. If the connection breaks, which still happens from time to time, it usually requires restarting the machine.pachctl mount
for very short sessions, when I know exactly what I want to do and usepachctl unmount
pretty quickly. To be frank, its mostly used for listing files in repos that have sub-directories...Overall, I think this has many advantages over
pachctl mount
, has a different use case and I really believe will see extremely frequent use.