====== Git on y3.php.net ====== * The main git user is called //git// * His home directory is in /git * We use gitolite * Repos are stored in /git/repositories ===== Creating a new repository ===== - You need access to **git.php.net:gitolite-admin.git** - Add the repository to the long long list of repos in //conf/gitlite.conf// - OR Add the repository itself to //conf/gitolite.conf// - Ensure RW+ is set to //@all// - Ensure R is set to //daemon gitweb// - Ensure //config.sharedRepository = true// - Add a description at the end of the file - **Do not give access to any other user except daemon and gitweb** - Create the repo on github. Use dash instead of slashes e.g. //pecl/numbers/bitset// becomes //pecl-numbers-bitset// on github - Import the repository using svn2git. - git init reponame - cd reponame - svn2git %%--verbose%% %%--authors%% /path/to/authors.map http://svn.php.net/repository/pecl/package - The authors.map is in the gitolite-admin.git repo. - Push it to the newly created repository. - git push %%--all%% https://git.php.net/push/REPONAME - git push %%--tags%% https://git.php.net/push/REPONAME - Make sure all branches are pushed - Add the appropriate //hooks.mailinglist// config variable - Do that **AFTER** you pushed the initial repository or people will hate you. - Rename to .git in the //global_avail// file in SVNROOT. - A GitHub repository should be created by an "owner" of the PHP-GitHub project using https://main.php.net/manage/github.php karma & co is going to be installed automatically. If you have problem call dsp@php.net.