Some commands seem to be purely github related, which make sense, some others seem to overlap with just plain git.
> Clone the repository you want to work with using gh repo clone owner/repo
Like, what does this do apart from a regular git clone? Why is this necessary? I guess it additionally stores some meta information so that other "gh" commands know which repo they are on. This should have been a separate command IMHO to leave the regular git clone alone. Something like "git clone ssh://github.com/foo/bar" followed by "gh init foo/bar".
> When you’ve finished adding that feature or fixing that bug, use gh pr create
Same goes here. Why overlaying git commands? I would have expected to just push my branch, and then call something like "gh pr create <my branch> <target branch>"
> And your teammate can check out your pull request using gh pr checkout 1337
Same remark again and again, what does that do apart from checking out a branch? Why the overlay?
> view the diff with gh pr diff
So what's wrong with "git diff <target>..<source>"
> gh pr merge
Come on.. "git co <target> ; git merge <source>" needs to be overplayed?
> gh release create [tag name]
Oh sure, let's overlay git flow as well.
I mean overall the tool looks cute and all, but magic overlays is a no no for me.
> Like, what does this do apart from a regular git clone? Why is this necessary?
You can't see a difference between ```gh repo clone owner/repo``` and ```git clone git@github.com:owner/repo.git```?
Also:
> Something like "git clone ssh://github.com/foo/bar" followed by "gh init foo/bar"
What's there to "init"?
> Same goes here. Why overlaying git commands? I would have expected to just push my branch, and then call something like "gh pr create <my branch> <target branch>"
From the docs: "When the current branch isn’t fully pushed to a git remote, a prompt will ask where to push the branch [...]"
> Same remark again and again, what does that do apart from checking out a branch? Why the overlay?
It resolves the pr # to the corresponding branch name, probably git fetch and checkout. Why should I have to know the irrelevant piece of information that is how you named your branch?
> So what's wrong with "git diff <target>..<source>"
How do you find out the target and source hashes? Another piece of convenience.
> Come on.. "git co <target> ; git merge <source>" needs to be overplayed?
And this is wrong. This merges source in target locally, ```gh pr merge``` merges it remotely. You can be Linus Torvalds, you are not going to push to my master branch.
Some commands seem to be purely github related, which make sense, some others seem to overlap with just plain git.
> Clone the repository you want to work with using gh repo clone owner/repo
Like, what does this do apart from a regular git clone? Why is this necessary? I guess it additionally stores some meta information so that other "gh" commands know which repo they are on. This should have been a separate command IMHO to leave the regular git clone alone. Something like "git clone ssh://github.com/foo/bar" followed by "gh init foo/bar".
> When you’ve finished adding that feature or fixing that bug, use gh pr create
Same goes here. Why overlaying git commands? I would have expected to just push my branch, and then call something like "gh pr create <my branch> <target branch>"
> And your teammate can check out your pull request using gh pr checkout 1337
Same remark again and again, what does that do apart from checking out a branch? Why the overlay?
> view the diff with gh pr diff
So what's wrong with "git diff <target>..<source>"
> gh pr merge
Come on.. "git co <target> ; git merge <source>" needs to be overplayed?
> gh release create [tag name]
Oh sure, let's overlay git flow as well.
I mean overall the tool looks cute and all, but magic overlays is a no no for me.