vishwanatharondekar/gitlab-cli

Name stuff like hub

stevelacey opened this issue · 6 comments

You're copying hub, it's great, I think this should be more like it – I tweaked my install like so:

  • #42 renamed gitlab-cli to lab – either way I think dropping the cli would be better, of course it's cli
  • #40 renamed create-merge-request to merge-request (consistent with pull-request)
  • #40 renamed open-merge-requests to merge-requests (hub doesn't have this afaik)

Also these would be good:

  • #39 use the git default editor when message is not specified – not the system default editor
  • print out the url of created merge requests rather than opening them
    edit: notice this is an option but not default, I'd vote for consistent default but /shrug
  • #41 load project envs
  • infer the gitlab url from the origin remote (you'd still need to collect the token though so no biggie I guess)

You might also want to consider renaming the project and emphasising the completeness / compatibility with hub more – I went through 2 or 3 alternative gitlab-cli or cli-gitlab projects that didn't work before I got to this one

Great work thanks 😁 ✌️


Edit: I decided to get off my ass and PR some of the above ☝️

Thanks for suggestions and PR's. This made my day. I will have a look at each of them and merge them or edit them as I feel need. Weekend is coming so expect this to get closed in next two days.

@vishwanatharondekar no problem, glad it made your day, this is a neat little tool and I hadn't used commander before so happy to have a play – merging some of my PRs will cause conflicts in others, drop me an @ on the PR when that happens and I'll rebase them

@stevelacey While looking at hub help, now I realise that this utility is close to it. I had started with what I had used from hub and then built on top of it as features were requested.

These GitHub commands are provided by hub:

   pull-request   Open a pull request on GitHub
   fork           Make a fork of a remote repository on GitHub and add as remote
   create         Create this repository on GitHub and add GitHub as origin
   browse         Open a GitHub page in the default browser
   compare        Open a compare page on GitHub
   release        List or create releases (beta)
   issue          List or create issues (beta)
   ci-status      Show the CI status of a commit

From the above list, we dont have fork, create, release, issue and ci-status.

We have open-merge-requests which is not there in github I see. I probably developed for it because I open that page a lot and thought of adding it myself.

How do you suggest to emphasise the completeness with hub. Are you suggesting renaming to lab, more/better documentation and description?

  • I would lead with an example usage right at the top of your README beneath your one-liner description – see https://github.com/github/hub for an example of that

  • I would also think about messaging the owner of https://www.npmjs.com/package/gitlab-cli and see if they'll decommission it so you can take the namespace, and have the logical package name

  • Swap your install instructions to use npm install git-lab-cli – the extra dash sucks – but looks more pro than a url install

  • Make it looks simpler, drop the env var instructions once you merge #50 and users are onboarded when they do their first API request

  • Anyone searching for this tool is probably coming from having used hub – so hub-identical examples are going to resound well with them

  • I don't know if renaming to lab (#42) is useful but exposing that bin certainly is – and maybe you should use it in your README examples – at the very VERY least I would drop the -cli on the binary, and supply a gitlab one (assume there's a reason you haven't?) – that doesn't conflict with anything afaik?

We have open-merge-requests which is not there in github I see. I probably developed for it because I open that page a lot and thought of adding it myself.

Actually, we can open the pull requests page with hub browse -- pulls

That's great. I may rename that as well. Thanks for the information.