{"id":13474239,"url":"https://github.com/vishwanatharondekar/gitlab-cli","last_synced_at":"2025-04-04T21:06:14.681Z","repository":{"id":13246346,"uuid":"66712236","full_name":"vishwanatharondekar/gitlab-cli","owner":"vishwanatharondekar","description":"Create a merge request from command line in gitlab","archived":false,"fork":false,"pushed_at":"2024-01-19T23:18:15.000Z","size":141,"stargazers_count":266,"open_issues_count":5,"forks_count":46,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-03-28T20:08:01.616Z","etag":null,"topics":["cli","cli-utilities","cli-utility","command-line","command-line-tool","commandline","git","github","gitlab","gitlab-cli","javascript","merge-req","merge-request","nodejs","utilities","utility"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vishwanatharondekar.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2016-08-27T11:56:33.000Z","updated_at":"2024-12-24T16:33:15.000Z","dependencies_parsed_at":"2024-04-13T03:49:17.117Z","dependency_job_id":null,"html_url":"https://github.com/vishwanatharondekar/gitlab-cli","commit_stats":{"total_commits":116,"total_committers":18,"mean_commits":6.444444444444445,"dds":0.4655172413793104,"last_synced_commit":"f3a4b4cefdafaa9e07ebc96bdef8fbb6fe84438b"},"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vishwanatharondekar%2Fgitlab-cli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vishwanatharondekar%2Fgitlab-cli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vishwanatharondekar%2Fgitlab-cli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vishwanatharondekar%2Fgitlab-cli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vishwanatharondekar","download_url":"https://codeload.github.com/vishwanatharondekar/gitlab-cli/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247249524,"owners_count":20908212,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","cli-utilities","cli-utility","command-line","command-line-tool","commandline","git","github","gitlab","gitlab-cli","javascript","merge-req","merge-request","nodejs","utilities","utility"],"created_at":"2024-07-31T16:01:10.604Z","updated_at":"2025-04-04T21:06:14.662Z","avatar_url":"https://github.com/vishwanatharondekar.png","language":"JavaScript","readme":"gitlab-cli\n==================\n\ngitlab-cli is a command line utility created in JavaScript. Inspired from [hub](https://github.com/github/hub). It tries to provide commands which makes working with gitlab from the command line easier. \n\nCreating a merge request with gitlab-cli is as simple as\n\n```sh\n$ lab merge-request\n```\n\n## Installation\n\nInstall it using npm\n\n```sh\n$ npm install git-lab-cli -g\n```\n\n## Usage\n\n```sh\n$ lab command [options]\n```\n\nTo get a list of available commands\n\n```sh\n$ lab --help\n```\n\n## Commands available\n\n    browse [options]          Open current branch or a specific page in gitlab\n    compare [options]         Open compare page between two branches\n    merge-request [options]   Create merge request on gitlab\n    merge-requests [options]  Opens merge request page for the repo.\n\nCheck help of each command like following \n\n```sh\n$ lab merge-request --help\n```\n\n### Running example\n\n```sh\n$ lab merge-request -b feature/feature-name -t develop\n```\n\nAbove will create merge request for merging feature/feature-name in develop.\n\n### Options for create-merge-request\n\n    -b, --base [optional]                  Base branch name\n    -t, --target [optional]                Target branch name\n    -m, --message [optional]               Title of the merge request\n    -a, --assignee [optional]              User to assign merge request to\n    -l, --labels [optional]                Comma separated list of labels to assign while creating merge request\n    -r, --remove_source_branch [optional]  Flag indicating if a merge request should remove the source branch when merging\n    -s, --squash [optional]                Squash commits into a single commit when merging\n    -e, --edit [optional]                  If supplied opens edit page of merge request. Prints the merge request URL otherwise\n    -o, --open [optional]                  If supplied open the page of the merge request. Prints the merge request URL otherwise\n    -p, --print [deprecated]               Doesn't do anything. Kept here for backward compatibility. Default is print.\n    -v, --verbose [optional]               Detailed logging emitted on console for debug purpose\n    -h, --help                             output usage information\n\n## Configurations\n\ngitlab-cli **captures configurations needed for itself on the first run**. Just run the command you want to run and it will capture the information needed. \n\nYou can also set the configurations yourself as git config (project specific) or environment variables (global).\n\n### git config\n\nSetting git config allows you to provide separate configurations for each gitlab repository. \n\n```sh\n$ git config --add gitlab.url \"https://gitlab.yourcompany.com\"\n$ git config --add gitlab.token \"abcdefghijskl-1230\"\n```\n\nFind your gitlab token at [https://gitlab.yourcompany.com/profile/account](http://gitlab.yourcompany.com/profile/account)\n\n### Environment variables\n\nSetting environment variables allows you to provide global configurations which will be used for all your gitlab repositories when using gitlab-cli. \n\n    GITLAB_URL=https://gitlab.yourcompany.com\n    GITLAB_TOKEN=abcdefghijskl-1230\n\nFind your gitlab token at [https://gitlab.yourcompany.com/profile/account](http://gitlab.yourcompany.com/profile/account)\n\n### Features supported \n\n1. Base branch is optional. If base branch is not provided. Current branch is used as base branch.\n2. Target branch is optional. If target branch is not provided, default branch of the repo in gitlab will be used. \n3. Created merge request page will be opened automatically after successful creation.\n4. If title is not supported with -m option value. It will be taken from in place editor opened. First line is taken as title.\n5. In place editor opened contains latest commit message.\n6. In the editor opened third line onwards takes as description.\n7. Comma separated list of labels can be provided with its option.\n8. Supports forks. If base branch and target branch are on different remotes. Merge request will be created between forks.\n9. Supports setting assignee for merge request. \n","funding_links":[],"categories":["JavaScript","Version Control","\u003ca name=\"git\"\u003e\u003c/a\u003eGit and accessories"],"sub_categories":["Git"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvishwanatharondekar%2Fgitlab-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvishwanatharondekar%2Fgitlab-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvishwanatharondekar%2Fgitlab-cli/lists"}