Is gitosis or gitolite necessary to push changes via HTTP/HTTPS to remote git repository?

4

1

I have an apache2 server running a virtual host with HTTPS and basic authentication enabled. The virtual host serves GIT repositories via gitweb script. Authenticated users pull repositories from virtual host.

I don't need fine access control since I am using basic authentication mechanism. Therefore, my questions are:

  1. Is gitweb the only thing I need to pull AND push changes with this setup?
  2. If not enough, do I need gitolite or gitosis to push changes?

David Andreoletti

Posted 2012-01-27T03:14:59.437

Reputation: 250

Answers

4

gitweb is only a vizualization mechanism. You don't need it to pull/push.
A simple Apache server calling the git-http-backend mechanism is enough.

Gitolite (please, no gitosis: it is obsolete) is an authorization mechanism, also not needed to push/pull (unless you want to restrict access to a group of users).

More details in:

VonC

Posted 2012-01-27T03:14:59.437

Reputation: 13 292

-To push/pull (via Smart HTTP protocol), only git-http-backend is required. -To view/restrict/enable user access; gitweb or gitolite is required.

Am I right ? – David Andreoletti – 2012-01-27T09:44:37.973

@DavidAndreoletti: to view, just gitweb is required. Gitolite is only there to intercept any git command and accept or deny said command based on the user requiring access to a repo through that command. You can interface gitweb with Gitolite if you want your visualization interface to benefit from the authorization layer: http://sitaramc.github.com/gitolite/ggshb.html

– VonC – 2012-01-27T09:54:56.533

In my setup, authorization layer is managed by Apache's Basic Authentication mechanism. – David Andreoletti – 2012-01-27T10:07:21.417

@DavidAndreoletti: nope: Apache's Basic Authentication, as its name suggests, is for authentication, NOT (I repeat not) authorization. Please read: http://sitaramc.github.com/gitolite/auth.html

– VonC – 2012-01-27T10:12:43.010