[PATCH] Update setup-git-server-over-http.txt based on my experience.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I managed to set up a Git repository on a preconfigured WebDAV server,
without installing Git on it or changing the configuration. This patch
reflects this (it previously stated that Git was _necessary_ on the
server, which isn't true). Also give a few hints to troubleshoting.

Signed-off-by: Matthieu Moy <Matthieu.Moy@xxxxxxx>
---
 Documentation/howto/setup-git-server-over-http.txt |   36 +++++++++++++++----
 1 files changed, 28 insertions(+), 8 deletions(-)

diff --git a/Documentation/howto/setup-git-server-over-http.txt b/Documentation/howto/setup-git-server-over-http.txt
index 8eadc20..34d377a 100644
--- a/Documentation/howto/setup-git-server-over-http.txt
+++ b/Documentation/howto/setup-git-server-over-http.txt
@@ -40,9 +40,10 @@ What's needed:
 
 - have permissions to chown a directory
 
-- have git installed at the server _and_ client
+- have git installed on the client, and preferably on the server
 
-In effect, this probably means you're going to be root.
+In effect, this probably means you're going to be root, or that you're
+using a preconfigured WebDAV server.
 
 
 Step 1: setup a bare GIT repository
@@ -50,9 +51,9 @@ Step 1: setup a bare GIT repository
 
 At the time of writing, git-http-push cannot remotely create a GIT
 repository. So we have to do that at the server side with git. Another
-option would be to generate an empty repository at the client and copy
-it to the server with WebDAV. But then you're probably the first to
-try that out :)
+option is to generate an empty repository at the client and copy it to
+the server with a WebDAV client (which is the only option if Git is
+not installed on the server).
 
 Create the directory under the DocumentRoot of the directories served
 by Apache. As an example we take /usr/local/apache2, but try "grep
@@ -169,7 +170,8 @@ On Debian:
 
    Most tests should pass.
 
-A command line tool to test WebDAV is cadaver.
+A command line tool to test WebDAV is cadaver. If you prefer GUIs,
+konqueror can open WebDAV URLs as "webdav://..." or "webdavs://...".
 
 If you're into Windows, from XP onwards Internet Explorer supports
 WebDAV. For this, do Internet Explorer -> Open Location ->
@@ -179,8 +181,10 @@ http://<servername>/my-new-repo.git [x] Open as webfolder -> login .
 Step 3: setup the client
 ------------------------
 
-Make sure that you have HTTP support, i.e. your git was built with curl.
-The easiest way to check is to look for the executable 'git-http-push'.
+Make sure that you have HTTP support, i.e. your git was built with
+curl (and a recent enough version). The easiest way to check is to
+look for the executable 'git-http-push'. The command "git http-push"
+with no argument should display a usage message.
 
 Then, add the following to your $HOME/.netrc (you can do without, but will be
 asked to input your password a _lot_ of times):
@@ -212,6 +216,10 @@ It is important to put the last '/'; Without it, the server will send
 a redirect which git-http-push does not (yet) understand, and git-http-push
 will repeat the request infinitely.
 
+Also note that the URL should point to the git repository itself, that
+is, to the '.git/' directory and not the working tree in case the
+repository is non-bare.
+
 
 Step 4: make the initial push
 -----------------------------
@@ -224,6 +232,13 @@ This pushes branch 'master' (which is assumed to be the branch you
 want to export) to repository called 'upload', which we previously
 defined with git-config.
 
+Using a proxy:
+--------------
+
+If you have to access the WebDAV server from behind an HTTP(S) proxy,
+set the variable 'all_proxy' to 'http://proxy-host.com:port', or
+'http://login-on-proxy:passwd-on-proxy@xxxxxxxxxxxxxx:port'. See 'man
+curl' for details.
 
 Troubleshooting:
 ----------------
@@ -248,9 +263,14 @@ Reading /usr/local/apache2/logs/error_log is often helpful.
 
   On Debian: Read /var/log/apache2/error.log instead.
 
+If you access HTTPS locations, git may fail verifying the SSL
+certificate (this is return code 60). Setting http.sslVerify=false can
+help diagnosing the problem, but removes security checks.
+
 
 Debian References: http://www.debian-administration.org/articles/285
 
 Authors
   Johannes Schindelin <Johannes.Schindelin@xxxxxx>
   Rutger Nijlunsing <git@xxxxxxxxxxxxxxxxx>
+  Matthieu Moy <Matthieu.Moy@xxxxxxx>
-- 
1.5.5.rc0.25.g9d90.dirty

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux