node-git-server icon indicating copy to clipboard operation
node-git-server copied to clipboard

`.git` suffix inconsistently enforced

Open willstott101 opened this issue 3 years ago • 1 comments

When creating a new repo, a .git suffix is appended here: https://github.com/gabrielcsapo/node-git-server/blob/e25c481b85f8b929146b4ea46227d0b6fd83caf4/src/git.ts#L288 and it appears to be enforced in list, but not everywhere

However the .git suffix is not a requirement anywhere else - this server is perfectly happy serving git repositories without a .git suffix afaict... https://github.com/gabrielcsapo/node-git-server/blob/e25c481b85f8b929146b4ea46227d0b6fd83caf4/src/util.ts#L150

This inconsistency has tripped me up a bit. I would personally be in favour of enforcing a .git suffix everywhere - possibly by redirecting to .git suffixed URL if a non-git suffixed URL is encountered.

This is inconsistent with bare/checked-out repo conventions though... which might suggest to enforce .git only if checkout is false...

I think for us we're going to enforce and stick to the suffix externally for the meantime - but it'd be good to gather opinions of other maintainers/users.

willstott101 avatar Feb 21 '22 15:02 willstott101

I agree, we could make this an option that could be "enforceGitSuffix"? Thoughts on what it would look like for opt-in behavior?

gabrielcsapo avatar Jul 11 '22 06:07 gabrielcsapo