vermiculus / magithub

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

Set reviewer and assignee when creating PR #323

Open mpolden opened 6 years ago

mpolden commented 6 years ago

When creating a pull request using hub, it's possible to set reviewers and and assignees at the time the PR is created.

hub pull-request -r [reviewer] -a [assignee]

It would be great to have this feature in magithub. Right now, the time I save by creating PRs from Emacs is lost because I still have to open the PR in my browser to assign reviewers.

Thanks for creating this package, I've missed using GitHub features from Magit!

vermiculus commented 6 years ago

IIRC you do need to assign reviewers manually still (not for long!) but you can assign…assignees from the status buffer (or anywhere you see this field):

Head:     64e1a6c bleep test commit
Merge:    bcb23d2 yabadee bleep
Push:     64e1a6c origin/bleep test commit

Staged changes (1)
modified   bleep
@@ -2,3 +2,4 @@
   (while (string= "." (setq remote (magit-get-upstream-remote branch)))
     (setq branch (magit-get-upstream-branch branch)))
   remote)
+hi
\ No newline at end of file

Unmerged into yabadee (1)
64e1a6c origin/bleep test commit

Pull Requests (1)
#47  another title
     My notes:   create a new note
     Created:    Wed Jan 17 22:05:14 2018
     Updated:    Fri Jan 19 21:58:53 2018
     Author:     vermiculus
     Assignees:  none <-- place point here and type `a'
     Labels:     none
     Preview:    another body

a runs the command magithub-assignee-add (found in
magit-magithub-assignee-section-map), which is an interactive Lisp
closure in ‘magithub-user.el’.

It is bound to a.

(magithub-assignee-add ISSUE USER)

Not documented.
am commented 6 years ago

This is very handy! @vermiculus I do feel that is a bit difficult to do this with spacemacs integration, since the status buffer is evilified and reach the Assignees field it's tricky. I guess to improve this some changes should be done on the spacemacs layer, I'll investigate to see if I can do something about it.

vermiculus commented 6 years ago

Long term goal is to have a single binding for a magit-popup interface for issue/PR settings like this. Would that make it easier from a spacemacs perspective? (I don't use spacemacs so I don't know its assumptions/limitations.)

am commented 6 years ago

I've started using spacemacs recently, so there is a lot of new things that I need to wrap my head around.

My difficulty in first place was to put the cursor in the Assignees, since the magit buffer does not accept h and l movements it's difficult to do a simple task. Instead I had to use arrow keys and >>>>>>>> until I got there. But like me others had the same problem, and the solution is already described here:

If you set evil-magit-want-horizontal-movement to t, you'll get horizontal movement using h/l in magit buffers. It moves other bindings accordingly - h to H, l to L, and L to C-l.

Then I can use a to assign reviewers and all is fine.

I guess now what could be improved would be to have this as part of the PR creation... not sure if you plan to do this.

vermiculus commented 6 years ago

You should be able to use the magit section-movement commands; surely those exist in spacemacs, yes?

vermiculus commented 6 years ago

I do plan to have some solution for setting up a PR completely before submission, so this issue should remain open.

am commented 6 years ago

@vermiculus you can use magit section movement, but its evilified, by that I mean that vim keybindings are set to navigate on the buffer, so j will do magit-section-forward and k magit-section-backward.

👍 good to know this is planned. It will streamline the process of creating a PR, either way it does a lot aready. Great work BTW!