]> git.mxchange.org Git - friendica.git/blobdiff - doc/Developers-Intro.md
Small cleanup (#5416)
[friendica.git] / doc / Developers-Intro.md
index 32dde8d6ea2c9ada272a55d4e8152e6793fd155e..1e077902d6ea2ca9504a879a04be603f3bfcdd45 100644 (file)
@@ -16,7 +16,6 @@ Whether you feel like an expert or like a newbie - join us with your ideas!
 The discussion of Friendica development takes place in the following Friendica forums:
 
 * The main [forum for Friendica development](https://forum.friendi.ca/profile/developers)
-* The [forum for Friendica theme development](https://friendica.eu/profile/ftdevs)
 
 ## Help other users
 
@@ -48,6 +47,23 @@ Friendica uses [Composer](https://getcomposer.org) to manage dependencies librar
 
 It's a command-line tool that downloads required libraries into the `vendor` folder and makes any namespaced class in `src` available through the whole application through `boot.php`.
 
+If you want to have git automatically update the dependencies with composer, you can use the `post-merge` [git-hook](https://git-scm.com/book/en/v2/Customizing-Git-Git-Hooks) with a script similar to this one:
+
+    #/usr/bin/env bash
+    # MIT © Sindre Sorhus - sindresorhus.com
+    # forked by Gianluca Guarini
+    # phponly by Ivo Bathke ;)
+    # modified for Friendica by Tobias Diekershoff
+    changed_files="$(git diff-tree -r --name-only --no-commit-id ORIG_HEAD HEAD)"
+    check_run() {
+                   echo "$changed_files" | grep --quiet "$1" && eval "$2"
+    }
+    # `composer install` if the `composer.lock` file gets changed
+    # to update all the php dependencies
+    check_run composer.lock "bin/composer.phar install --no-dev"
+
+just place it into `.git/hooks/post-merge` and make it executable.
+
 * [Class autoloading](help/autoloader)
 * [Using Composer](help/Composer)
 * [How To Move Classes to `src`](help/Developer-How-To-Move-Classes-to-src)
@@ -124,7 +140,7 @@ If you want to get involved here:
 * Look at the first steps that were made (e.g. the clean theme).
        Ask us to find out whom to talk to about their experiences.
 * Talk to design people if you know any.
-* Let us know about your plans [in the dev forum](https://forum.friendi.ca/profile/developers) or the [theme developer forum](https://friendica.eu/profile/ftdevs).
+* Let us know about your plans [in the dev forum](https://forum.friendi.ca/profile/developers)
        Do not worry about cross-posting.
 
 ### Client software