Kategorien
GIT Versionierung

existentes GIT Repo in einen bestehenden Ordner (mit Dateien) integrieren

Um ein bestehendes GIT Repo in einen bestehenden Ordner, gefüllt mit Dateien, zu integrieren, kann man wie folgt vorgehen:

/~ cd notemptydir/

notemptydir/~ git init
notemptydir/~ git remote add origin PATH/TO/REPO
notemptydir/~ git fetch
notemptydir/~ git checkout -t origin/master
Kategorien
Deployment Linux Server Shell

scp (secure copy) von server zu server

um schnell (ohne evtl. nfs mount flaschenhälse) dateien von server zu server zu kopieren, kann man scp benutzen.
auf dem ziel server einloggen und:

~ $ scp user@ip_or_domain:path/to/remote/file /path/to/local/dir/   
Kategorien
Deployment Server SVN Versionierung

rekursives löschen von .svn ordnern

mit folgendem befehl kann man rekursiv .svn ordner löschen:

rm -rf `find . -type d -name .svn`
Kategorien
PHP Server

rekursive php glob funktion – ordner/dateien rekursiv nach pattern filtern


protected function rGlob($pattern = '*', $flags = 0, $path = false)
{
    if (!$path)
    {
        $path = dirname($pattern).DIRECTORY_SEPARATOR;
    }

    $pattern    = basename($pattern);
    $paths      = glob($path.'*', GLOB_MARK|GLOB_ONLYDIR|GLOB_NOSORT);
    $files      = glob($path.$pattern, $flags);
    foreach ($paths as $path)
    {
        $files = array_merge($files, $this->rGlob($pattern, $flags, $path));
    }
    return $files;
}

Kategorien
Deployment Linux Server Shell

Ordner mit gzip packen und entpacken.

Da GZIP selbst keine ganzen Ordner packen kann, kann man TAR das gepackte Archiv erzeugen lassen.

user@server: tar cvzf ordner.tar.gz ordnername
user@server: tar zxvf ordner.tar.gz