{"_id":"parse-git-url","_rev":"225-11d52a7d2fec082a0ea348809559d1ac","name":"parse-git-url","dist-tags":{"latest":"1.4.0"},"versions":{"1.0.0":{"name":"parse-git-url","version":"1.0.0","license":"MIT","_id":"parse-git-url@1.0.0","maintainers":[{"name":"quietshu","email":"ds303077135@gmail.com"}],"homepage":"https://github.com/vercel/parse-git-url#readme","bugs":{"url":"https://github.com/vercel/parse-git-url/issues"},"dist":{"shasum":"f9a3f87baa1e41892bbc138086f247fa992ee1f1","tarball":"https://registry.npmjs.org/parse-git-url/-/parse-git-url-1.0.0.tgz","fileCount":2,"integrity":"sha512-DHWsmj23AUsXivldb+7oc61HAOdXmg4C7HiDvpnJUY6/Jc7DAh4zENsh2DfkljK/xkharMkQlSTN61j0o2hoKw==","signatures":[{"sig":"MEUCIEymuPtNHbvJ9RuPSafgZDvSPv5vSLQQjIjGm1r9P7R3AiEAsbEywfuQLbujbSlFv0F9QjI8BpJ/dbUafgd2HQmLKPI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1112,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfLCUdCRA9TVsSAnZWagAAUM0P/R3noOeoOv8SkvhiO0ni\npcsdselrN/B3v6erDEkoZEoF5gIcXvT/tyNqbzx4ki3AecGtI7Lcibn6hni7\nNKT/OAWQVXpIGbJHXAVFmAGFj5m7v/32/J0thgbEASh4Bv7e62LXxLPVDmJK\nPU0ugbb2O86cBks0NouXBgJ9X1SGPGBxzshe5FndAV1GE38xe8Ha10oorEr4\nOW92MZUH0Z5E3EOSoqxRs4r5SWDRnheAytL4XxzNd3KghpzQaZXZF1WOca0P\nhwX18PEWr6HsSjDtZ8yHVE0yvI524nkHFytCzpzgyB/AbYK1z7h4Cy1TYTjT\nf/kXkn2RhLwa0QcJDXz6e2oB2kkPWMOtHv5/LKCuYPXE6TyDQtUAdAwS3nhh\npk2vtt4XE0n5SACNalvJxZJrJ9QcvgMaFyX4nVLITk2rY81MksDysAXsJx1c\n/E9cSXAGy73SqwUqYwPsOufz8fVfOkbA1QlX5C9orApTiLeagRXOTe5PYusR\nb1YCrvHyLwH75/aO04A66Ek6VDBPvj2t7ZxMJzUo9sMlzwJQwRXcQz66Rplk\n2OFkA6Txtzoucn+fTtGs0giFbDpY+ML0+5Ye8Lppghxg1lboYH3NuCPHA3xh\n4YSWmQa8dI8qtecJ2fpBeOob3j6UKF83k/tRFYwapTzgb0hen5GDQYIff8yB\n/3wq\r\n=p3Tn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./dist/src/index.js","types":"./dist/src/index.d.ts","gitHead":"934ecaddc1e8f3faf910b5807da96907fb700ca3","scripts":{"test":"jest","build":"tsc","watch":"tsc --watch"},"_npmUser":{"name":"quietshu","email":"ds303077135@gmail.com"},"repository":{"url":"git+https://github.com/vercel/parse-git-url.git","type":"git"},"_npmVersion":"6.14.4","description":"A lib for parsing the URL of Git Repositories.","directories":{},"_nodeVersion":"12.18.0","_hasShrinkwrap":false,"devDependencies":{"jest":"26.2.2","ts-jest":"26.1.4","typescript":"3.9.7","@types/jest":"26.0.9","@types/node":"12.0.2"},"_npmOperationalInternal":{"tmp":"tmp/parse-git-url_1.0.0_1596728604977_0.13881214195025393","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"parse-git-url","version":"1.0.1","license":"MIT","_id":"parse-git-url@1.0.1","maintainers":[{"name":"anatrajkovska","email":"ana.trajkovska2015@gmail.com"},{"name":"andybitz","email":"artzbitz@gmail.com"},{"name":"arzafran","email":"franco@basement.studio"},{"name":"atcastle","email":"atcastle@gmail.com"},{"name":"chibicode","email":"shu@chibicode.com"},{"name":"cleishm","email":"chris@leishman.org"},{"name":"codetheory","email":"thecodetheory@gmail.com"},{"name":"coetry","email":"allenhai03@gmail.com"},{"name":"dav-is","email":"mail@connordav.is"},{"name":"developit","email":"jason@developit.ca"},{"name":"fivepointseven","email":"fivepointseven@icloud.com"},{"name":"gielcobben","email":"g.cobben@gmail.com"},{"name":"gmonaco","email":"gbmonaco@google.com"},{"name":"guybedford","email":"guybedford@gmail.com"},{"name":"hankvercel","email":"hank@vercel.com"},{"name":"housseindjirdeh","email":"houssein.djirdeh@gmail.com"},{"name":"iamevilrabbit","email":"hello@evilrabb.it"},{"name":"igorklopov","email":"igor@klopov.com"},{"name":"ijjk","email":"jj@jjsweb.site"},{"name":"janicklas-ralph","email":"janicklasralph036@gmail.com"},{"name":"jaredpalmer","email":"jared@palmer.net"},{"name":"javivelasco","email":"javier.velasco86@gmail.com"},{"name":"jkrems","email":"jan.krems@gmail.com"},{"name":"joecohens","email":"joecohenr@gmail.com"},{"name":"juancampa","email":"juancampa@gmail.com"},{"name":"keanulee","email":"npm@keanulee.com"},{"name":"kikobeats","email":"josefrancisco.verdu@gmail.com"},{"name":"leo","email":"mindrun@icloud.com"},{"name":"lfades","email":"luisito453@gmail.com"},{"name":"lucleray","email":"luc.leray@gmail.com"},{"name":"matheuss","email":"matheus.frndes@gmail.com"},{"name":"maxleiter","email":"maxwell.leiter@gmail.com"},{"name":"mfix22","email":"mrfix84@gmail.com"},{"name":"mglagola","email":"mark.glagola@gmail.com"},{"name":"msweeneydev","email":"mail@msweeneydev.com"},{"name":"nazarenooviedo","email":"nazareno@basement.studio"},{"name":"nkzawa","email":"naoyuki.kanezawa@gmail.com"},{"name":"okbel","email":"belen@vercel.com"},{"name":"paco","email":"pvco.coursey@gmail.com"},{"name":"paulogdm","email":"paulogdemitri@gmail.com"},{"name":"prateekbh","email":"prateek89born@gmail.com"},{"name":"quietshu","email":"ds303077135@gmail.com"},{"name":"rabaut","email":"rabautse@gmail.com"},{"name":"ragojose","email":"ragojosefrancisco@gmail.com"},{"name":"rauchg","email":"rauchg@gmail.com"},{"name":"samsisle","email":"samko9522@gmail.com"},{"name":"sarupbanskota","email":"sbanskota08@gmail.com"},{"name":"skllcrn","email":"skllcrn@zeit.co"},{"name":"spanicker","email":"shubhie@gmail.com"},{"name":"styfle","email":"steven@ceriously.com"},{"name":"timer","email":"timer150@gmail.com"},{"name":"timneutkens","email":"tim@timneutkens.nl"},{"name":"tootallnate","email":"nathan@tootallnate.net"},{"name":"umegaya","email":"iyatomi@gmail.com"},{"name":"williamli","email":"williamli@bbi.io"},{"name":"zeit-bot","email":"team@zeit.co"}],"homepage":"https://github.com/vercel/parse-git-url#readme","bugs":{"url":"https://github.com/vercel/parse-git-url/issues"},"dist":{"shasum":"92bdaf615a7e24d32bea3bf955ee90a9050aeb57","tarball":"https://registry.npmjs.org/parse-git-url/-/parse-git-url-1.0.1.tgz","fileCount":4,"integrity":"sha512-Zukjztu09UXpXV/Q+4vgwyVPzUBkUvDjlqHlpG+swv/zYzed/5Igw/33rIEJxFDRc5LxvEqYDVDzhBfnOLWDYw==","signatures":[{"sig":"MEUCIQDa0wcsUmA1srRdDY0O2eiDB8UC2FibfAfUkvT+lOS/OgIgFb1k0LEnR2BwvnDwfFlQyVW4dyIS1NZ6DHkgMZsKb6g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":6099,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfLCh+CRA9TVsSAnZWagAATOUP/j3GwhN+YFOGR0kR3Gwa\ngxhtpQlMHl0CJAbLbRx34+7llwaH66B0c84WIkkMaQXlW1nuTgCQJnSx5heq\nJaosPdMapAq77G9JE+q4xkdI0H85HTNe19qlBucxqY9qezg/rtFbE1wv2QoQ\nR0TM0BHzrilxuRm6qT4mWxPg0l3heysJBrZhjTxDxq/wpsQpePKNjJkvRTZL\nKzEs/+9bDIgpTZnk161IyymXMuS2DUrlDe4RhOgPWZuMk/QJEVNqT9cBSNWZ\nVe9frXTmsoh3/wezZqIDPOP9xaxu2xlqLcoVpnGuKm2qvfM+44mrfu0ZDU+c\n18hxn2YsOSW1ZULZx7NykyKhU+Uwtdy4IjmWHBjzvko/QAsAjqxLi2N2a9gk\nrtalLGJk2WMCxSRIUv229c1Y5DeVyEhy8g8trfxvxeCUCeD0d/a1OjnLbhL1\nVPTzcKV5r1ur3Og0pYCYh15R5waTXqEVHzSACleGn4WULhOwtTUJz6zmcYcD\nr0Gu5Q3CN3OWshV5wLD3GuORqqh3m2RoBXGHUdZBPY6PQ131fxZo5hGtip1r\ng6Y9PbRZcyUMAL5Ajk65+5z1pjtaarSxglwS5ZWLvZEzLVXpzEDhJ5Jv42h2\na37sswD1C9RhlKEh4UGjLwxSwENhRgavZ0f74aB2EMNIGHsI6EQFW4fIf+uw\nXBsj\r\n=djDG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./dist/src/index.js","types":"./dist/src/index.d.ts","gitHead":"32ca200a58295063ab9b2f4d1d05a1f7f352ef0c","scripts":{"test":"jest","build":"tsc","watch":"tsc --watch"},"_npmUser":{"name":"quietshu","email":"ds303077135@gmail.com"},"repository":{"url":"git+https://github.com/vercel/parse-git-url.git","type":"git"},"_npmVersion":"6.14.4","description":"A lib for parsing the URL of Git Repositories.","directories":{},"_nodeVersion":"12.18.0","_hasShrinkwrap":false,"devDependencies":{"jest":"26.2.2","ts-jest":"26.1.4","typescript":"3.9.7","@types/jest":"26.0.9","@types/node":"12.0.2"},"_npmOperationalInternal":{"tmp":"tmp/parse-git-url_1.0.1_1596729470404_0.4181778532557716","host":"s3://npm-registry-packages"}},"1.1.0":{"name":"parse-git-url","version":"1.1.0","license":"MIT","_id":"parse-git-url@1.1.0","maintainers":[{"name":"gdborton","email":"gdborton@gmail.com"},{"name":"quietshu","email":"g@shud.in"},{"name":"matt.straka","email":"matt.j.straka@gmail.com"},{"name":"nick.tracey","email":"nick.tracey@vercel.com"},{"name":"zeit-bot","email":"team@zeit.co"},{"name":"vercel-release-bot","email":"infra+release@vercel.com"}],"dist":{"shasum":"48f505be373f26d29460a5968aaee3c4f6a2d0f1","tarball":"https://registry.npmjs.org/parse-git-url/-/parse-git-url-1.1.0.tgz","fileCount":7,"integrity":"sha512-GMopeFQR4UMnt7CYvPvKDLUKybd7ySHdhcT5o04m44Tc9l6B+qCkDwHAYzE6sq3zdFccjGSpcPaujL5bIAptEQ==","signatures":[{"sig":"MEUCIArw4M3jDCM8m2HaZxjShEvHIzfrzvcbyk3Cetc0TfgFAiEA0fUwuQFypRUo7qwEqzC9fmT/OV4kWkKG+xpDYgcabwc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":7203},"main":"./dist/src/index.js","types":"./dist/src/index.d.ts","scripts":{"test":"jest","build":"tsc","watch":"tsc --watch"},"_npmUser":{"name":"vercel-release-bot","email":"infra+release@vercel.com"},"repository":{"url":"https://github.com/vercel/parse-git-url.git","type":"git"},"description":"A lib for parsing the URL of Git Repositories.","directories":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"26.2.2","ts-jest":"26.1.4","prettier":"^2.8.8","typescript":"3.9.7","@types/jest":"26.0.9","@types/node":"12.0.2","@vercel/style-guide":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/parse-git-url_1.1.0_1694668095640_0.06289893551066772","host":"s3://npm-registry-packages"}},"1.2.0":{"name":"parse-git-url","version":"1.2.0","license":"MIT","_id":"parse-git-url@1.2.0","maintainers":[{"name":"gdborton","email":"gdborton@gmail.com"},{"name":"quietshu","email":"g@shud.in"},{"name":"matt.straka","email":"matt.j.straka@gmail.com"},{"name":"nick.tracey","email":"nick.tracey@vercel.com"},{"name":"zeit-bot","email":"team@zeit.co"},{"name":"vercel-release-bot","email":"infra+release@vercel.com"}],"dist":{"shasum":"5c30371cb6a34b0a492d6aa202e95cdeac7a3d80","tarball":"https://registry.npmjs.org/parse-git-url/-/parse-git-url-1.2.0.tgz","fileCount":7,"integrity":"sha512-BRwzYeuI8/1ObsInJJSOkUUShwkJhx9BPMoX8CDGIbm5E5e+4OmcVKwlWc9CPMy+OEeNVrQOpCKRsGiTfaJLcA==","signatures":[{"sig":"MEYCIQCJpDo/IwzvVhJEOBsQpqPmkEuxAX87RN1c+NB1CLQuLQIhAOOAf8GdPmlRxcqaZgxclTJDFdWSUcBdp+NaJq5IoSq1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":7329},"main":"./dist/src/index.js","types":"./dist/src/index.d.ts","scripts":{"test":"jest","build":"tsc","watch":"tsc --watch"},"_npmUser":{"name":"vercel-release-bot","email":"infra+release@vercel.com"},"repository":{"url":"https://github.com/vercel/parse-git-url.git","type":"git"},"description":"A lib for parsing the URL of Git Repositories.","directories":{},"_hasShrinkwrap":false,"devDependencies":{"jest":"26.2.2","ts-jest":"26.1.4","prettier":"^2.8.8","typescript":"3.9.7","@types/jest":"26.0.9","@types/node":"12.0.2","@vercel/style-guide":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/parse-git-url_1.2.0_1697574603282_0.9561668477508574","host":"s3://npm-registry-packages"}},"1.4.0":{"name":"parse-git-url","version":"1.4.0","license":"MIT","_id":"parse-git-url@1.4.0","maintainers":[{"name":"matheuss","email":"matheus.frndes@gmail.com"},{"name":"quietshu","email":"g@shud.in"},{"name":"nick.tracey","email":"nick.tracey@vercel.com"},{"name":"vercel-release-bot","email":"infra+release@vercel.com"},{"name":"zeit-bot","email":"team@zeit.co"},{"name":"matt.straka","email":"matt.j.straka@gmail.com"},{"name":"bkonkle","email":"brandon@konkle.us"}],"dist":{"shasum":"7626f5c61289280669ee18a234febd534918e9a0","tarball":"https://registry.npmjs.org/parse-git-url/-/parse-git-url-1.4.0.tgz","fileCount":7,"integrity":"sha512-qVtO0CC8qZcLEStEo3EmVDhw2bHRmBiAumggnRwVkMxBlf/3mbniVWVIVLap3h+hC2JliuDd/XwopuAhoajb+Q==","signatures":[{"sig":"MEUCIDl5ygefltL7LWSpPozFgeTrfUXVBHpOdCypIbAId05IAiEAuHJ21+gIv9KPFGmNUa0yUuZ2I1hjeqqMzaYYe9omBYI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7503},"main":"./dist/src/index.js","types":"./dist/src/index.d.ts","scripts":{"test":"jest","build":"tsc","watch":"tsc --watch"},"_npmUser":{"name":"vercel-release-bot","email":"infra+release@vercel.com"},"repository":{"url":"https://github.com/vercel/parse-git-url.git","type":"git"},"description":"A lib for parsing the URL of Git Repositories.","directories":{},"_hasShrinkwrap":false,"packageManager":"yarn@1.22.22+sha1.ac34549e6aa8e7ead463a7407e1c7390f61a6610","devDependencies":{"jest":"26.2.2","ts-jest":"26.1.4","prettier":"^2.8.8","typescript":"3.9.7","@types/jest":"26.0.9","@types/node":"12.0.2","@vercel/style-guide":"^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/parse-git-url_1.4.0_1755167290824_0.7485118661805463","host":"s3://npm-registry-packages-npm-production"}}},"time":{"created":"2020-08-06T15:43:24.977Z","modified":"2026-02-25T04:31:06.252Z","1.0.0":"2020-08-06T15:43:25.074Z","1.0.1":"2020-08-06T15:57:50.509Z","1.1.0":"2023-09-14T05:08:15.860Z","1.2.0":"2023-10-17T20:30:03.576Z","1.4.0":"2025-08-14T10:28:11.022Z"},"license":"MIT","repository":{"url":"https://github.com/vercel/parse-git-url.git","type":"git"},"description":"A lib for parsing the URL of Git Repositories.","maintainers":[{"email":"g@shud.in","name":"quietshu"},{"email":"infra+release@vercel.com","name":"vercel-release-bot"},{"email":"team@zeit.co","name":"zeit-bot"}],"readme":"# parse-git-url\n\nA lib for parsing the URL of GitHub, GitHub Enterprise Server (ghes), GitLab, and Bitbucket repositories.\n\n## Usage\n\n```js\nimport parseGitUrl from 'parse-git-url'\n\nparseGitUrl('https://github.com/vercel/swr')\n// => {\n//   type: 'github',\n//   owner: 'vercel',\n//   name: 'swr',\n//   branch: '',\n//   sha: '',\n//   subdir: ''\n// }\n\nparseGitUrl('https://github.example.com/vercel/swr', 'github.example.com')\n// => {\n//   type: 'ghes',\n//   owner: 'vercel',\n//   name: 'swr',\n//   branch: '',\n//   sha: '',\n//   subdir: ''\n// }\n\nparseGitUrl('https://google.com')\n// => null\n```\n\nIt supports parsing various URL schemas including SSH, branch, sha, commit, subdirectories, subgroups (GitLab), etc.\n\n## Author\n\nShu Ding ([@shuding\\_](https://twitter.com/shuding)) – [Vercel](https://vercel.com)\n","readmeFilename":"README.md"}