Skip to content

itplusx/einstieg_in_git_und_composer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 

Repository files navigation

Einstieg in Git & Composer

TYPO3 User Group Stuttgart Vaclav Janoch <[email protected]> 11.04.2013

Git ist eine Software zur verteilten Versionswerwaltung von Dateien:

  • Was heist verteilt?
    • Es gibt keinen zentralen Server.
    • Jedes Repository ist "eigenständig".
    • Datentransfer zwischen Repositories.
  • Was heist Versionsverwaltung?
    • commit: Ein Satz von Änderungen wird in einer "Version" zusammengefasst.
    • branch: Möglichkeit zur Entwicklung mehrer Entwicklungszweige.
      • z.B. master
      • z.B. TYPO3_6-0
      • z.B. TYPO3_4-7
    • tag: Markierung eines Entwicklungsstandes.
      • z.B. TYPO3_6-0-1
  • Weitere Begriffe
    • HEAD: Zeigt (i.d.R) auf den letzen Commit des aktuellen Branch
    • master: Standard-Branch
    • origin: Standard-Remote-Repository

Sehr guter und schlanker Einstieg: http://rogerdudler.github.io/git-guide/index.de.html

Grundsätzlich reicht es, dass die Repositories für alle Teammitglieder erreichbar sind.

Besonders für Open-Source-Projekte interessant: http://github.com

Bei dieser Variante haben alle Teammitglieder Zugriff auf alle Projekte.

Punkte 1.-5. werden auf dem Server ausgeführt, ab 6. auf den Clients.

yum install git
useradd git
usermod -s /usr/bin/git-shell git

Die Public Keys der Teammitglieder in <git_user's_home>/.ssh/authorized_keys eintragen.

git init --bare <path_to_repositories>/<repository_name>.git
chown -R git:git <path_to_repositories>/<repository_name>.git

Hier eine kleine Hilfe (ggf. Pfad zu den Repositories anpassen):

#!/bin/bash

if [ $# = 1 ]
then
 git init --bare /git/$1.git
 chown -R git:git /git/$1.git
else
 echo "Bitte (nur) einen Namen fuer das zu erstellende Git-Repository angeben!"
 echo "Usage: ./create_git_bare_repository.sh <repository_name>"
 exit 1
fi
git config --global user.mail "[email protected]"
git config --global user.name "username or name"
# ssh
git clone user@server:project.git
git clone ssh://user@server:project.git

# local
git clone /opt/git/project.git
git clone file:///opt/git/project.git

# git
git://user@server:project.git

# http
git clone http://example.com/gitproject.git

Einfach an den Dateien arbeiten.

Alle Dateien:

git add .

Bestimmte Datei:

git add <file>
git commit -m "Some message."

Ggf. weiterarbeiten und wieder commiten. Es muss natürlich nicht nach jedem commit ein push erfolgen. push eigentlich erst, wenn Task abgeschlossen ist.

git push origin master

Nur bestimmte Teammitglieder haben Zugriff auf bestimmte Projekte. Einfachere Verwaltung der User.

Eine Möglichkeit ist Gitweb: https://git.wiki.kernel.org/index.php/Gitweb

Übersichtlicher und vor allem einfacher zu installieren ist GitList: http://gitlist.org

http://git-scm.com Offizielle Git Webiste.
http://gitref.org Übersichtliche Befehlsreferenz. Ist nicht ganz vollständig, reicht aber für den Alltag.
http://wiki.weinimo.de/Git-Hilfen Diverse Lösungen für Alltagsfragen.

Alles was man über Composer wissen muss: http://getcomposer.org

  • Datenbank erstellen
  • Datenbankuser erstellen
  • Virtual Host erstellen

Siehe: http://docs.typo3.org/flow/TYPO3FlowDocumentation/Quickstart/

composer create-project -s dev typo3/flow-base-distribution htdocs
chown -R apache:apache .
cd htdocs
composer install --dev

In die composer.json folgendes hinzufügen um TYPO3.Surf zu installieren.

{
    ...
    "require": {
        ...
        "typo3/surf": "dev-master"
    },
    ...
}

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published