Skip to content

Conversation

zzet
Copy link
Contributor

@zzet zzet commented Mar 21, 2013

Added command to enable/disable access to repositories via git protocol

related to gitlabhq/gitlabhq#3285

@coveralls
Copy link

Coverage Status

Coverage increased (+0.01%) when pulling 553fecd on Undev:feature/git_protocol into 601450c on gitlabhq:master.

@dzaporozhets
Copy link
Contributor

Can you explain why we need it? I never used it and dont understand it usefulness

@zzet
Copy link
Contributor Author

zzet commented Mar 22, 2013

Yes, of course.

It requires us to provide access to the code (repository) without authorization (I know about http public access) and without many edits in other infrastructure services and configs (which is a referenced now to the specified repository with git protocol url). Historically, some projects use following links with git protocol... We can't safely abandon it. :(

@dzaporozhets
Copy link
Contributor

Basically its for some old projects inside your company.
And I guess almost nobody will use it for new projects.
So I think this feature should not goes to the core.
You can keep it inside your fork to solve a problem with your old projects.

@zzet
Copy link
Contributor Author

zzet commented Mar 22, 2013

@randx
So... I know about some problem not only inside our company.
I agree that it is better to use SSH to deploy, but some organizations do not need it. They seek alternative with global deploys key. Yes, I understand that, as an alternative to you now will HTTP access, but it also has some of its costs. For example, 100% uptime of the web server (and not just this reason). Git support git protocol in core, why you don't do some too?

As you can see, by default this feature in gitlab I submitted as disabled. Users can able to use it if he really needs it.

@dzaporozhets
Copy link
Contributor

@zzet Yes but its 121 additions in 17 files for gitlabhq and 43 additions for gitlab-shell.
For feature that can be avoided its a lot. I know git support it in core but I dont see why we need to support it.

@dmr
Copy link

dmr commented Mar 25, 2013

I installed gitlab and wondered why the git protocol is not supported. From my experience it is a lot faster than ssh and I think it should be a core functionality

@dzaporozhets
Copy link
Contributor

I think we dont nit git protocol. Its outdated, nobody use it and also it requires a lot of changes in gitlabhq. So I close this one

@cryptomilk
Copy link

The git protocol is much more efficient than any other protocol. gitlab is not only used for companies with private access to all repositories but also for free software. So they are already public.

Git transport over HTTP is often referred to as the dumb protocol because it requires no Git-specific code on the server side during the transport process. The fetch process is a series of GET requests.

Git over SSH and the Git protocol are much smarter protocols cause the can figure our the difference which is needed by the client and send only the date you really need.

See:

git-send-pack
git-receive-pack
git-upload-pack

And other resources on the net explaining the git protocol. For example:

http://git-scm.com/book/ch4-1.html

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

5 participants