X-Git-Url: https://git.p6c8.net/jirafeau_project.git/blobdiff_plain/7d8055d7ad495657eab93bc7a83f066e3d40ec51..169cbfa6f1d566deba92eb3ac559cba01588be27:/CONTRIBUTING.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 5725c0e..7c5ed44 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -19,27 +19,35 @@ So things like a markdown parser for the ToS or E-Mail tasks would be usefull fo Here is a little explaination of Jirafeau's arboresence in a simplified view only to show the most importants files and their role. +``` . -├── admin.php : adminitration interface, also permits to download files +├── admin.php : administration interface to manage links and files ├── f.php : permits to download files or show the download page -├── index.php : only provide a html/javascript client to interact with API -├── script.php : API interface and it's html documentation +├── index.php : provides a web interface to interact with API +├── script.php : API interface (all file actions happen here - upload, deletion, etc) ├── install.php : installation script -├── tos.php : terms of use the user may edit +├── tos.php : "Terms of Service" page ├── lib -│   ├── config.local.php : user's parameters -│   ├── config.original.php : default parameters with their documentation -│   ├── functions_*.js : javascript functions for html/javascript client -│   ├── functions.php : core functions and tools of jirafeau -│   ├── locales : langage folder, contain all langage files +│   ├── config.original.php : default parameters +│   ├── config.local.php : the users parameters (auto generated, not versionized) +│   ├── functions_*.js : JavaScript functions for index.php (AJAX etc) +│   ├── functions.php : core functions and tools of Jirafeau +│   ├── tos.original.txt : default text show on the ToS page +│   ├── tos.local.txt : a users alternative text show on the ToS page (not versionized) +│   ├── settings.php : core settings of Jirafeau, includes the configuration params automatically +│   ├── locales : language folder, contains all language files │   └── template -│   ├── footer.php -│   └── header.php +│   ├── footer.php : footer with links to source and ToS for all HTML views +│   └── header.php : header with logo and title for all HTML views ├── media : folder containing all skins -└── var-xxxxxxx : folder containing all data - ├── async : chunks of uploaded files - ├── files : all files that has been successfully uploaded - └── links : all links pointing to files with meta-informations +└── var-xxxxxxx : the users folder containing all data (auto generated, not versionized) + ├── async : chunks of uploaded files (not succressfull yet) + ├── files : all files that have been uploaded successfully + ├── [hashed file name] : the original file + ├── [hashed file name]_count : count many links to this file exist + └── links : all links, including meta-informations, pointing to files + ├── [link] : the link file, includes which original file should be used and some meta data like creation date, expiration time +``` ## Translations @@ -47,14 +55,19 @@ Translation may be add via [Jirafeau's Weblate](https://hosted.weblate.org/proje ## Coding style -- PHP function keywords are alone on a line -- Braces "{" must be put in a new line +- This project follows the [PSR-2](http://www.php-fig.org/psr/psr-2/) Coding Style - Files must be in UTF-8 without BOM and use Unix Line Endings (LF) -The whole project is not clean about that yet, feel free to fix :) +## Branches + +* ```master``` = latest release, e.g. 2.0.1 +* ```next-release``` = development branch - all new features are merged into this branch until the next version is released. So use this branch as base while developing new features or bugfixes. +* ```test``` = sandbox branch to test new features or merge requests, or run integration tests. The content of this branch may change at any time. ## Merge Requests Please create one branch for each feature and send one merge request for each branch. Dont squash several changes or commits into one merge request as this is hard to review. + +Please use ```next-release``` as base branch and send your merge request to this branch (not ```master```).