We need the new Net_URL2 version that has the proper include path for Services_Yadis
[phorkie.git] / src / phorkie / Repository / Setup.php
1 <?php
2 namespace phorkie;
3
4 class Repository_Setup
5 {
6     protected $repo;
7
8     public function __construct(Repository $repo)
9     {
10         $this->repo = $repo;
11     }
12
13     /**
14      * Should be called right after a repository has been created,
15      * either by "git init" or "git clone".
16      * Takes care of removing hook example files and creating
17      * the git daemon export file
18      *
19      * @return void
20      */
21     public function afterInit()
22     {
23         foreach (glob($this->repo->gitDir . '/hooks/*') as $hookfile) {
24             unlink($hookfile);
25         }
26         touch($this->repo->gitDir . '/git-daemon-export-ok');
27
28         $vc = $this->repo->getVc();
29
30         file_put_contents(
31             $this->repo->gitDir . '/hooks/post-update',
32             <<<CDE
33 #!/bin/sh
34 # Hook script to prepare a packed repository for use over dumb transports.
35
36 exec git update-server-info
37
38 CDE
39         );
40         chmod($this->repo->gitDir . '/hooks/post-update', 0755);
41
42         //keep track of owner
43         $vc->getCommand('config')
44             ->addArgument('user.name')
45             ->addArgument($_SESSION['name'])
46             ->execute();
47         $vc->getCommand('config')
48             ->addArgument('user.email')
49             ->addArgument($_SESSION['email'])
50             ->execute();
51     }
52
53 }
54
55 ?>