Git

Aus TBZ_-_Wiki
Wechseln zu:Navigation, Suche

Wenn irgendwo Software entwickelt wird, ob von jemandem alleine, von einer Gruppe oder gar von einer ganzen Community, kommt bestimmt ein Revisions Kontroll Tool zum Einsatz. Mit Hilfe von so einem SCM (Source Code Management System) packt jeder seine Aenderungen am Code in einzelne commits. So kann ganz einfach zu einem späteren Zeitpunkt wieder zu alten Versionen zurückgesprungen werden, oder neue Features entwickelt werden, ohne seine stabile aktiuele Version kaputt zu machen.

Geschichte

Ursprünglich wurde git von Lunus Torvalds entwickelt, da er nicht mehr arbeiten wollte mit SVN, einer noch immer aktuelen Alternative zu git. Mitlerweile sind schon sehr viele Leute und Projekte von svn und anderen CSMs zu git umegestiegen und seither niehmehr zu SVN oder was auch immer zurückgekehrt.

GIT vs. SVN

git

  • viel schneller
  • kleinere Repos
  • gesammte History ist im Repo
  • mehrere mögliche Development Workflows
  • clone = full dump von dem Repo

svn

  • nicht gesammte History ist im Repo
  • offline Arbeiten nicht mlglich
  • repos werden bei grossen Projekten sehr schnell riesig


basic syntax

als kleines Beispiel werden wir jetzt ein lokales repo erstellen und es zu Github pushen, einem gratis Anbieter von OpenSource Repos.

# den Namen und die email Adresse in deiner lokalen git config speichern
$ git config --global user.name "Harald"
$ git config --global user.email "ka@strichteifa.ch"

# in einem Ordner git repo inizialisieren, der zum git repo werden soll (egal ob leer oder schon existierender code)
$ git init

# neues Repo auf der Github-Seite erstellen und die remote origin beim lokalen hinzufüge
$ git remote add origin git@github.com:myGithubUsername/myGithubRepoName

# add file to repo and commit their changes
$ git add myFile1.php myFile2.php
$ git commit -m "meine commit Nachricht

$ git push -u origin master


See also