git/list[1] front-page[2] threads[3] people[4] search[5] about
 

git for local web development

From
WDWilliam DiNoia <william.dinoia@mac.com>
Date
Apr 16, 2009, 23:04 UTC
Message-ID
<135754252540163221910297561025355826788-Webmail@me.com>
Hello,
I am having a bit of trouble trying to setup git for web development. I would like to have a git repository in /var/www/sites which I can clone and work on from my ~/Desktop. Working from the desktop clone, I would like to be able to git-push and have the work tree updated. It seems this is a common request as it is in the FAQ, Why won't I see changes in the remote repo after "git push"?
This is what I've done...
as www-data from /var/www/sites/
$mkdir test.com
$cd test.com
$git-init
$git-config core.worktree /var/www/sites/test.com
$vim .git/hooks/post-receive
 #!/bin/sh
 git-checkout -f
$chmod +x .git/hooks/post-receive
Then as william from /home/william/Desktop/
$git-clone /var/www/sites/test.com
$cd test.com
$vim index.html
 testing, testing, 1,2
$git-add index.html
$git-commit
$git-push origin master
Something like the following is returned, and the work tree at /var/www/sites/test.com is not updated
Counting objects: 5, done.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 277 bytes, done.
Total 3 (delta 1), reused 0 (delta 0)
Unpacking objects: 100% (3/3), done.
To /var/www/sites/test.com/.git
   9b490a2..5e5cc63  master -> master
error: unable to unlink old 'index.html' (Permission denied)
error: hooks/post-receive exited with error code 1

The interesting part is that if I change to /var/www/sites/test.com and run "git-checkout -f" it updates the work tree... Should I be using a different hook? Is there something wrong with the script? Is there a better, more elegant way to achieve updating of the work tree?

Next: Jeff King
Message 1 of 6 in “git for local web development”
  1. William DiNoiaApr 16, 2009
  2. Jeff KingApr 17, 2009
  3. William DiNoiaApr 17, 2009
  4. Jeff KingApr 17, 2009
  5. Martin LanghoffApr 17, 2009
  6. William DiNoiaApr 17, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.