vermiculus / magithub

**DEPRECATED - please use Forge instead!** -- Magit-based interfaces to GitHub
GNU General Public License v3.0
579 stars 63 forks source link

Improve cloning workflow #236

Open vermiculus opened 6 years ago

vermiculus commented 6 years ago

I'm imagining a workflow that involves choosing a username from a list of 'favorites' with a match not required. Then, the current repositories of this user are loaded for completion.

With a prefix argument, we can keep the current behavior. This will keep the function usable for users with many repositories. If we can parse the input as a sparse repository, we should assume it's a URL and use that; otherwise we can use the user/repo format like we do today.

stardiviner commented 6 years ago

What about add a cache mechanism for favourite users history? For example, I open fork some Emacs package developer's repo, to add PR.

And thanks for your job on magithub very much. I like it very much. ::))

vermiculus commented 6 years ago

How do you mean? I'm guessing something that remembers all users whose repositories you've cloned?

stardiviner commented 6 years ago

Yes, like a cloned users history in a list. (can be stored in customiz.el) I found package.el stores installed packaged in customize.el too. BTW, I think should store botth GitHub username with nick like (github-username . nick) or whatever data structure. WDYT? (Actually this is because I badly on remember names, I a completing mechanism will help me :) )

vermiculus commented 6 years ago

I think nick-names is over-engineering; if something like that is desired, it wouldn't be too difficult to have as an add-on package. A completing read over users will already complete over a list like

username (alist-get 'name (ghub-get "/users/username"))
stardiviner (stardiviner)
vermiculus (Sean Allred)

I'll see what I can do about this in the next few weeks. For now, polishing up the documentation is my top priority :smile:

stardiviner commented 6 years ago

That's very great. Thanks very much. Take your time.