Schlagwort-Archive: Git

passenger spawn_manager

Habe mir unlängst eine Spielwiese für Ruby on Rails 3.0.8 auf Debian 6.0 eingerichtet. Auch die Passenger Einrichtung ist heute auf Debian schon ein Klacks und funktionierte, wie man hier sieht.
Mit git hatte ich keine Erfahrung, aber ich will auch damit spielen, also habe ich mich schnell eingearbeitet und es hat mich überzeugt. Ein wirklich hervorragendes und sehr mächtiges Version Control System. Sogar das zentrale Repository mit gitosis und gitweb funktionierte nach einigen Spielereien mit den Schlüsseln.
Von einer entwicklungs-sub.domain.xx muss man sein RoR-Projekt natürlich noch bequem auf eine production.domain.xx schieben können, also kam Capistrano ins Spiel.
Stundenlang kamen immer wieder seltsame Fehlermeldungen von einem passenger spawn_manager im error.log vom Apachen – der sich mit einem 500er error code verweigerte – die darauf hingedeutet haben, dass etwas mit dem spawn server nicht in Ordnung war.

Nun habe ich das Problem gelöst und alles was nicht 100%ig meinen Vorstellungen entspricht, sind die Fehlermeldungen und meine Genauigkeit, denn natürlich war ich wieder einmal selbst schuld, da ich in der deploy.rb den Pfad zum Repository falsch setzte. Naja, ich hab ja eh nur den “.” vor “git” vergessen. LOL

Ergänzung zu git

Auf Igittigitt! So viel git und noch mehr gits habe ich mir ja schon einige Seiten notiert und hier möchte ich diese Linksammlung erweitern bzw. aufsplitten mit:
Git User’s Manual (for version 1.5.3 or newer)
gittutorial(7) Manual Page
Everyday GIT With 20 Commands Or So
und der Befehlsübersicht auf git(1) Manual Page.
“git – the stupid content tracker” ist sicher nicht ironisch gemeint.

Was jeder brauchen kann der git benutzt, ist:

  • git-init(1) to create a new repository.
  • git-show-branch(1) to see where you are.
  • git-log(1) to see what happened.
  • git-checkout(1) and git-branch(1) to switch branches.
  • git-add(1) to manage the index file.
  • git-diff(1) and git-status(1) to see what you are in the middle of doing.
  • git-commit(1) to advance the current branch.
  • git-reset(1) and git-checkout(1) (with pathname parameters) to undo changes.
  • git-merge(1) to merge between local branches.
  • git-rebase(1) to maintain topic branches.
  • git-tag(1) to mark known point.
  • git-clone(1) from the upstream to prime your local repository.
  • git-pull(1) and git-fetch(1) from “origin” to keep up-to-date with the upstream.
  • git-push(1) to shared repository, if you adopt CVS style shared repository workflow.
  • git-format-patch(1) to prepare e-mail submission, if you adopt Linux kernel-style public forum workflow.

Ein weiterer guter Artikel zu push und pull in Deutsch, der auch eine übersichtliche Skizze zu Git Data Transport Commands zeigt.

I git ti git! So viel git und noch mehr gits


Igittigitt! schreibt man auf git und Pro Git (hier auf Deutsch) stellt mir eine hervorragende Einführung dar.
Gitosis ist ebenfalls recht nützlich und es führte mich direkt zu Gitweb und Git, Gitosis, Gitweb (the Debian way) und einer fast unüberschauberen Ansammlung an tools, interfaces und frontends Igittigitt.

Git is a free & open source, distributed version control system designed to handle everything from small to very large projects with speed and efficiency

Auf Ergänzung zu git habe ich mir notiert, was jeder am Anfang braucht, wenn er git benutzt.

Aktualisierung:
installieren: $ sudo apt-get install git
einrichten:
$ git config –global user.name “John Doe”
$ git config –global user.email johndoe@example.com
$ git config –global core.editor vim
$ git config –global merge.tool vimdiff
Die config ansehen mit $ git config –list
und Hilfe finden:
$ git help
$ git –help
$ man git-

$ git init
$ git add *.c
$ git add README
$ git commit -m ‘initial project version’

$ git status

$ cat .gitignore
*.[oa]
*~

git diff
git commit
git rm
git mv
git log
git commit –amend
git tat
git show
git push
git clone

Weblinks:
Git Doku
Hosting von Git-Repositories mit Gitosis
Git-Repositories mit gitosis und gitweb (Debian Lenny)