Tak. Konrad Ktoso Malawski konrad.malawski@java.pl - @ktosopl blog.project13.pl - SFI 2011-11.03.2011

Podobne dokumenty
Rozproszony system kontroli wersji GIT. Piotr Macuk

GIT. System Kontroli wersji GIT. Rafał Kalinowski

Co zostanie wypisane na ekranie? (1)

Programowanie I

System kontroli wersji Git

Adam Wójs <adam[shift+2]wojs.pl> git --wprowadzenie

Podstawowy warsztat informatyka

System kontroli wersji git

Systemy kontroli wersji

Narzędzia programistyczne - GIT

Git rozproszony system kontroli wersji

Git - podstawy. Błażej Kowalczyk. Koło Naukowe Robotyków KoNaR. 7 listopada 2014

Programowanie Systemów Wbudowanych

Programowanie zespołowe

System kontroli wersji, system zarządzania kodem źródłowym

System kontroli wersji GIT. Andrzej Śliwa. java4people 2009

Jak usprawnić tworzenie i zarządzanie stroną na drupalu. Maciej Łukiański

Git, Bitbucket. Narzędzia i środowiska programistyczne. Laboratorium 2. Prowadzący: Kierunek: Semestr: Rok: Tomasz Gądek Informatyka Zimowy 2

SubVersion. Piotr Mikulski. SubVersion. P. Mikulski. Co to jest subversion? Zalety SubVersion. Wady SubVersion. Inne różnice SubVersion i CVS

Git i platforma GitHub

Open Source w służbie developerom

Projektowanie oprogramowania systemów NARZĘDZIA PRACY GRUPOWEJ, KONTROLI WERSJI, DOKUMENTOWANIA I ŚLEDZENIA BŁĘDÓW

Systemy kontroli wersji git od wewnatrz Użycie gita Koniec. git. Rozproszony system kontroli wersji. sphere.pl. Koło Naukowe Sfera

Git, Bitbucket, IntelliJ IDEA

Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich właścicieli.

SVN sojusz, partnerstwo, współpraca

Programowanie Zespołowe

#1. Do wykonania jest biblioteka matematyczna, pozwalająca na pisanie działań w ciągu: math.add(1).sub(1).div(1);

Systemy kontroli wersji

Ćwiczenia z Git cz. 2

SUBVERSION TOMASZ ŁUKASZUK

Podstawowy warsztat informatyka

Zarządzanie projektami informatycznymi

Michał (plucho) Subversion Wykorzystanie i administracja repozytorium

Git Podstawowe pojęcia, instalacja i konfiguracja

Programowanie w językach skryptowych - Python i Linux Bash

git krótki przewodnik

Technologie Komponentowe. Piotr Łukasik p /

CVS system kontroli wersji

GIT and GIT Flow in CI/CD

Programowanie. Systemy kotroli wersji. Janusz Szwabiński. Plan wykładu:

Platforma GitHub. 1 Cel laboratoriów. 2 GitHub. 2.1 Git. źródeł.

Assembla.com zajęcia 1

MBUM #2. Zarządzanie kopiami konfiguracji RouterOS. Jacek Rokicki

Użytkowanie PortableGit w systemie Windows. 1. Najważniejsze informacje

Jacek WOŁOSZYN AUTOMATYZACJA PROCESU ARCHIWIZACJI PRZYROSTOWEJ DANYCH Z WYKORZYSTANIEM GIT AUTOMATING THE PROCESS OF INCREMENTAL BACKUP DATA USING GIT

System zarządzania wersjami I Subversion

Drupal i GIT. Schemat pracy.

Systemy zarządzania wersjami

łatki darcs w praktyce darcs system kontroli wersji dla wybrednych Paweł Kołodziej 16 grudnia 2008

Platformy programistyczne:.net i Java WYKŁ AD 1: WPROWADZENIE

1 Tworzenie własnego zaproszenia dla powłoki bash

Korzystanie z VCS oznacza również, że jeśli coś zepsujesz lub utracisz pliki, możesz je łatwo odzyskać.

Platformy Technologiczne

CI/CD - CO TO? PO CO? JAK?

GIT. Rozproszony system kontroli wersji

Platformy programistyczne:.net i Java WYKŁ AD 1: WPROWADZENIE

Systemy Kontroli Wersji

Wprowadzenie do systemu wersjonowania svn

Techniki komputerowe w robotyce

Zielona Szkoła Czaplinek 2010

Git Magic. Ben Lynn. Sierpień 2007

Subversion - jak dziaªa

Gra-zabawka dla niemowląt przygotowana z użyciem w Unity 3D

ponad pracowników ponad pracowników ponad pracowników ponad pracowników

ARNOLD. EDUKACJA KULTURYSTY (POLSKA WERSJA JEZYKOWA) BY DOUGLAS KENT HALL

Środowisko programisty. Środowisko programisty 1/35

Tychy, plan miasta: Skala 1: (Polish Edition)

Ćwiczenia 9: Zarządzanie konfiguracją Zadania:

FORMA SZKOLENIA MATERIAŁY SZKOLENIOWE CENA CZAS TRWANIA

Programowanie zespołowe

Użytkowanie systemów kontroli wersji.

Zakopane, plan miasta: Skala ok. 1: = City map (Polish Edition)

SymPy czyli matematyka w Pythonie

Git - Rozproszony System Kontroli Wersji

Platformy programistyczne:.net i Java WYKŁ AD 1: WPROWADZENIE

Jak zatrudnić słonie do replikacji baz PostgreSQL

Nowy system kontroli wersji oprogramowania. Jacek Prucia

SVN - wprowadzenie. 1 Wprowadzenie do SVN. 2 U»ywanie SVN. Adam Krechowicz. 16 lutego Podstawowe funkcje. 2.1 Windows

Konfiguracja i administracja systemem kontroli wersji SVN

kontener aplikacyjny nie tylko dla programistów Łukasz Piątkowski Koło Naukowe SKiSR

Subversion. System wersjonowania projektów. Instytut Informatyki Politechnika Poznańska

Git instrukcja dla studentów

1. System kontroli wersji Instalacja programu kontroli wersji CVS

CVS Zarządzanie kodem źródłowym

Instalacja cross-compilatora Inne elementy. Gentoo. Krzysztof Mazur. June 25, 2014

Wprowadzenie do systemów kontroli wersji

Wprowadzenie do systemów kontroli wersji

WYKORZYSTANIE JĘZYKA GROOVY W TESTACH JEDNOSTKOWYCH, INTEGRACYJNYCH I AUTOMATYCZNYCH. Mirosław Gołda, Programista Java

SzukamNeta.pl Wicket, Maven, SVN, Hudson - tutorial

1 Tworzenie własnego zaproszenia dla powłoki bash

Integracja produktów Atlassian na przykładzie grupy IPFD

Zarządzanie farmami serwerów Linux

Narzędzia kontroli wersji Subversion

Partnerzy: Laboratorium 15






Transkrypt:

Tak.

Tak. Po prostu.

github.com/ktoso @ktosopl blog.project13.pl

Masz pytanie? Nie czekaj do końca prezentacji!

Poproszę... Pytanie do publiczności

Ważne słowa (-: WAŻNE :-) System kontroli wersji Scentralizowany czy Zdecentralizowany (CVCS vs DVCS) Zespół Współpraca Zmiany Diff ( różnice ) Integracja zmian Słowniczek: Commit Snapshot Konflikt Branch

git-ninijitsu Config Init Clone Add / Stage Reset Status Commit Log Gitk Git gui Stash Branch Checkout Merge Fetch Pull Rebase Add --patch Push Grep Bisect Blame Daemon Stash Diff Gc Format-patch Svn

Centralized SCM World Jedno jedyne repozytorium One to Rule Them All

Svn UDAJE branche i tagi /tags/... /branches/... /trunk/...

Helo (Git) World!

Bardzo skomplikowany setup ;-) Git init. (Przyjrzymy się strukturze plików git za moment na żywo )

SCM Wars: Attack of the clones Git clone file:///home/ktoso/coding/intellij Git clone ssh://ktoso@dynames/repository Git clone http://git.project13.pl/pub/repository Git clone https://git.project13.pl/pub/repository Git clone git://git.project13.pl/git/repository.git

./git/index AKA Staging Area

./git/index AKA Staging Area

./git/index AKA Staging Area = indeks ponieważ istnieje plik.git/index staging area ponieważ idealnie obrazuje jego działanie

Commit jest LOKALNY

Commit jest LOKALNY

Commit thyself, Lancelot!

Local (internal details) workflow

Local (internal details) workflow

Local (internal details) workflow

Local (internal details) workflow

Local (internal details) workflow

Local (internal details) workflow

ALL Git Objects on 1 slide!

Nie ma treści = nie ma nic.

BRANCH + MERGE

BRANCH + MERGE

BRANCH + MERGE

BRANCH + MERGE

Przykład Real Life

Przykład Real Life

Przykład Real Life

Przykład Real Life

So many heads...?

There's just one.git/head $ Git branch * master fire snake

There's just one.git/head Git checkout fire

There's just one.git/head $ Git branch master * fire snake

Nowy branch = trywialne Git branch niebieski

Nowy branch = trywialne Git branch niebieski Git checkout niebieski

Nowy branch, trywialniej Git checkout -b niebieski

Git merge zielony

Git merge zielony

Git merge zielony

Fast Forward merge strategy

Git merge zielony --no-ff

Git branch -d zielony Git branch -d

STASH

OCTOPUS

OCTOPUS (Merge Engine) Git checkout master Git merge feature-45 fix

Shall I push or shall I pull..?

Introducing: the buttler (server) Git serve

Introducing: the buttler (server) Git serve git daemon \ --reuseaddr \ --verbose \ --base-path=. \ --export-all \./.git Git config alias.serve...

Introducing: the buttler (server) Git serve Git clone git://buttler/repo.git

Introducing: the buttler (server) Git serve

The good old way - Patches

The good old way - Patches

The good old way - Patches

Typical Open Source Flow

Typical Open Source Flow

Typical Open Source Flow

Typical Open Source Flow

Typical Open Source Flow

git rebase

Git rebase --interactive HEAD^^

Git rebase --interactive HEAD^^

Rebase = Zmiana bazy

Rebase = Zmiana bazy

Rebase = Zmiana bazy

Rebase = Zmiana bazy

Rebase = Rewind + Replay

Git cherry-pick hs4f7z hs4f7z569sp

Git cherry-pick hs4f7z hs4f7z569sp

TAG Git tag release-1.0

TAG Git tag release-1.0 = svn copy http://svn.example.com/repos/calc/trunk \ http://svn.example.com/repos/calc/tags/release-1.0 \ -m "Tagging the 1.0 release of the 'calc' project."

Git svn...

Git svn...

Git svn...

Git svn...

Poznaliśmy również podstawy: Bazaar

Final bunch of links: Best Resources: Git-scm.com Git.wiki.kernel.org Progit.org (Creative Commons Book) Gitref.org...blogs! Public OpenSource (or $$$ private) hosting: Github.com Sourceforge.net Assembla.com Gitorious.org Gitenterprise.com Private Hosting: Google -> gitosis Google -> gitolite Other: Google -> git refcard Google -> successful git workflow

ありがとう (DZIĘKUJĘ) ZA UWAGĘ!

Pytanie Bonusowe... git init. touch me mkdir folder git stage. git commit -am 'Initial commit' tree.git/objects/ fortune > anything.txt git add. git commit -am \ 'How many git objects exist now?'.org