Source control systems. Horváth Ernő, Dr. Pozna Claudiu Radu

Hasonló dokumentumok
A FEJLESZTÉS KIHÍVÁSAI

Szoftver technológia. Verziókövető rendszerek. Cserép Máté ELTE Informatikai Kar 2019.

OOP és UML Áttekintés

Tortoise SVN használata. Képes útmutató

Konfigurációmenedzsment

A fordítónak mindenhez lehet

Bazaar ismertető. Timár András

Iványi László ARM programozás. Szabó Béla 1. Óra Verziókövetés

Címkék és ágak kezelése i. Címkék és ágak kezelése

Térinformatikai és távérzékelési alkalmazások fejlesztése. A szoftverfejlesztés technikai támogatása

Saját Subversion tároló üzemeltetése i. Saját Subversion tároló üzemeltetése

Programozási technológia 2.

Git verziókövető rendszer alkalmazása a projektek nyomon követésére

1. Gyakorlat: Telepítés: Windows Server 2008 R2 Enterprise, Core, Windows 7

Mi is a git? Csapatban dolgozni Git pro eszközök. Git bevezető. Szabó Adrienn Adatbányászat és Webes Keresés Kutatócsoport

Dr. Mileff Péter SZOFTVERFEJLESZTÉS VERZIÓKÖVETÉS, VERZIÓKÖVETŐ RENDSZEREK. Miskolci Egyetem Általános Informatikai Tanszék

Fejlesztési projektek menedzselése IBM Rational CLM termékekkel. Ker-Soft Kft. Kaszás Orsolya - üzleti tanácsadó

Fási PHP függőségkezelés composerrel

Git verziókezelő. Készítette: Hugyák Tamás. Pannon Egyetem Műszaki Informatikai Kar v1.0

Code review és continous integration toolok BME-MIT

Git verziókezelő. Készítette: Hugyák Tamás. Pannon Egyetem Műszaki Informatikai Kar v1.1

DocBook útmutató. Jeszenszky Péter Debreceni Egyetem, Informatikai Kar

GDi Esri Magyarország Felhasználói Konferencia Timár Gábor: Konkurens adatfeldolgozás ArcGIS rendszerben

Adatbázis-kezelés ODBC driverrel

Termék életciklus és a verziókezelés

Git verziókövető rendszer alkalmazása

Széchenyi István Egyetem

2. lépés: openssh szerver telepítés sudo apt-get install openssh-server

Visual Studio 2012 és MSDN. Csomagok és licencelés

WebEC kliens számítógép telepítése és szükséges feltételek beállítása, az alábbi ellenőrző lista alapján történik.

Hálózati architektúrák és Protokollok GI Kocsis Gergely

Verziókövetés és a Subversion. használata

Fábián Zoltán Hálózatok elmélet

Szakdolgozat. Csernai Csaba

Verziókövető rendszerek használata a szoftverfejlesztésben

Toolok a programozás féléves feladatokhoz

Verziókezelt konfigurációmanagement++ Pásztor György, SZTE Klebelsberg Könyvtár

Ellenőrző lista. 2. Hálózati útvonal beállítások, kapcsolatok, névfeloldások ellenőrzése: WebEC és BKPR URL-k kliensről történő ellenőrzése.

12. rész: Verzió- és feladatkezelés a szoftverfejlesztésben. Bakay Árpád NETvisor kft (30) arpad.bakay@netvisor.hu

Dropbox - online fájltárolás és megosztás

Excel ODBC-ADO API. Tevékenységpontok: - DBMS telepítés. - ODBC driver telepítése. - DSN létrehozatala. -Excel-ben ADO bevonása

Cisco Catalyst 3500XL switch segédlet

Szoftver technológia. Projektmenedzsment eszközök. Cserép Máté ELTE Informatikai Kar 2019.

11. Gyakorlat: Certificate Authority (CA), FTP site-ok

OZW V7.0 firmware frissítés, Remote Tool Access részletes ismertető

Repo(sitory): verziókövetett tároló Commit: egy új verzió rögzítése a repóban Branch: egy ág a verziókövetési fában

Teszt topológia E1/1 E1/0 SW1 E1/0 E1/0 SW3 SW2. Kuris Ferenc - [HUN] Cisco Blog -

ANDROID ALKALMAZÁS FEJLESZTÉS

Szakdolgozati, TDK témajavaslatok

Miért ASP.NET? Egyszerű webes alkalmazás fejlesztése. Történet ASP ASP.NET. Működés. Készítette: Simon Nándor

Alapfogalmak, WWW, HTTP

API tervezése mobil környezetbe. gyakorlat

Ne lépjen ide be senki, aki nem ismeri a geometriát (Platón, i.e.)

BackupPC. Az /etc/hosts fájlba betehetjük a hosztokat, ha nem a tejles (fqdn, DNS név) névvel hivatkozunk rájuk: # /etc/hosts #

OPENCV TELEPÍTÉSE SZÁMÍTÓGÉPES LÁTÁS ÉS KÉPFELDOLGOZÁS. Tanács Attila Képfeldolgozás és Számítógépes Grafika Tanszék Szegedi Tudományegyetem

1. Ismerkedés a Hyper-V-vel, virtuális gépek telepítése és konfigurálása

Nagios NSCA Indirect Monitoring, Passive Check

Számítógépes Hálózatok. 3. gyakorlat

vezeték nélküli Turi János Mérnök tanácsadó Cisco Systems Magyarország Kft.

AZ APACHE MAVEN ÉLETE ÉS HALÁLA.! Cservenák Tamás

Riak. Pronounced REE-ahk. Elosztott adattároló eszköz. Molnár Péter

Kameleon Light Bootloader használati útmutató

HÁLÓZATI BEÁLLÍTÁS. Videorögzítőkhöz

Enabling Grids for E-sciencE. EGEE köztesréteg. Adat szolgáltatások a glite-ban. INFSO-RI

A JAVA FUTTATÁSAKOR ELŐFORDULÓ HIBA-

JavaScript Web AppBuilder használata

EBSCO PUBLISHING. Hogyan működik? október 2.

Petőfi Irodalmi Múzeum. megújuló rendszere technológiaváltás

Data Integrátorok a gyakorlatban Oracle DI vs. Pentaho DI Fekszi Csaba Ügyvezető Vinnai Péter Adattárház fejlesztő február 20.

3 A hálózati kamera beállítása LAN hálózaton keresztül

Zimbra levelező rendszer

Osztott alkalmazások fejlesztési technológiái Áttekintés

Google Cloud Print útmutató

Novell Nterprise Branch Office: a távoli iroda felügyeletének leegyszerűsítése

Szoftvertechnológia 9. fejezet. Implementáció és verziókövetés. Giachetta Roberto. Eötvös Loránd Tudományegyetem Informatikai Kar

WCF, Entity Framework, ASP.NET, WPF 1. WCF service-t (adatbázissal Entity Framework) 2. ASP.NET kliens 3. WPF kliens

Oracle GoldenGate Studio Nagyon rövid bemutató. Quick Talk. Gollnhofer Gábor

EBSCO ebooks. Hogyan működik? Help Sheet. Általános információ az e-könyvekről

Nyílt forráskódú irodai programkomponensek vállalati környezetbe való integrációjának vizsgálata és implementációja

ArcGIS for Desktop Tippek & Trükkök. Beke Dániel ESRI Magyarország Kft.

Adatbázis kezelő szoftverek biztonsága. Vasi Sándor G-3S

FOSS4G-CEE Prágra, 2012 május. Márta Gergely Sándor Csaba

20. Tétel 1.0 Internet felépítése, OSI modell, TCP/IP modell szintjenek bemutatása, protokollok Pozsonyi ; Szemenyei

Hangyász Hibakövető Rendszer

TI TMDSEVM6472 rövid bemutatása

ELTE, IK, Információs Rendszerek Tanszék

1. Kapcsolók konfigurálása

Hogyan használja az OROS online pótalkatrész jegyzéket?

Webtárhely létrehozása a helyen. Lépések Teendő 1. Böngészőbe beírni: 2. Jobb oldalon regisztrálni (tárhelyigénylés).

KnowledgeTree dokumentumkezelő rendszer

Kalumet Számlázó. Termék leírás

Titkosítás mesterfokon. Tíz évvel a titkosítás után. Előadó: Tóthi Dóra Kovárczi Béla András

CISCO gyakorlati segédlet. Összeállította: Balogh Zoltán

Projekt és folyamat alapú dokumentum kezelés. az Alfresco rendszer használatával

Utolsó módosítás:

ADATBÁZIS VERZIÓKÖVETÉSE: LIQUIBASE

ADATVÉDELEM. Adatvédelem

Csatlakozás a BME eduroam hálózatához Setting up the BUTE eduroam network

Első lépések. File/New. A mentés helyét érdemes módosítani! Pl. Dokumentumok. Fájlnév: pl. Proba

Selling Platform Telepítési útmutató Gyakori hibák és megoldások

Átírás:

Source control systems Horváth Ernő, Dr. Pozna Claudiu Radu

Verziókezelés A verziókezelő rendszerek angolul revision control, version control, source control. Leggyakrabban a mérnöki tudományokban és a szoftverfejlesztésben használnak verziókezelő rendszereket fejlesztés alatt álló dokumentumok, tervek, forráskódok és egyéb olyan adatok verzióinak kezelésére, amelyeken több ember dolgozik egyidejűleg.

Verziókezelő rendszer Verziókezelő rendszer feladatai:» Projekt módosításainak követése Könyvtárstruktúra és fájlok változásainak követése. Ki, mikor, mit módosított? Mi volt a projekt állapota egy tetszőleges korábbi időpontban? Módosításhoz tartozó kommentek kezelése.» Kódmegosztás, csoportmunka támogatása Lock-Modify-Unlock megközelítés Copy-Modify-Merge megközelítés

Csoportmunka támogatás Copy-Modify-Merge Copy-Modify-Merge megközelítés» Nincs zárolás» Bárki olvashatja a szerveren tárolt fájlokat» Ha az új verzió feltöltése előtt valaki már módosította a fájlt, akkor a későbbi feltöltő out-of-date hibát kap és fel kell oldani az ütközéseket.» Lock mechanizmus továbbra is megmarad(hat) bináris állományok (kép, hang, stb.) kezelésére.

Verziókezelő szoftverek tulajdonságai Dokumentumok kezelése» idő és verzió alapján Változások követése» adott fájl több verziója Több szerző összehangolt munkája Konfliktusok elkerülése, feloldása (resolve) Hozzáférések, felhasználók kezelése Verzió összehasonlítás (diff)

Népszerű megoldások 2014-ben a legnépszerűbb ilyen szoftverek:» Git» Svn (Subversion)» Mercurial» Cvs 2014-ben ezeket hostingoló szolgáltatók:» GitHub» SourceForge» CodePlex» Launchpad» Assembla» Google Code

SVN Subversion 7

How to Use Version Control client checkout (first time) (do some work, test) check status update (resolve conflicts) commit (do more work, test) server send current revision ( n ) any changes since revision n? update your local copy with any changes in the repo. save your changes and log entry

Subversion Repository Layout One repository, many projects Root Project 1 Project 2 trunk tags branches trunk tags branches One project per repository Repository parent dir Project 1 Project 2 trunk tags branches trunk tags branches

The Work Cycle Create a local copy svn checkout svn update Make changes svn add svn move svn delete 100 Subversion Repository 106 105 Submit your changes svn commit Resolve conflicts (Merge your changes) svn diff svn resolved See what was changed in the repository in the meantime svn status -u Update your local copy svn update

URL & protokoll http://myhost.com:port/path/to/repository Protokoll: svn svn+ssh http https file Host név, IP cím 127.0.0.1 localhost host:8443 Opcionális port szám Repository relative path

SVN alapvető parancsok import nem verziózott alkönyvtár verziókezelés alá helyezése. export repository részének vagy egészének letöltése verzió információk nélkül. checkout Working copy létrehozása (repository részének vagy egészének letöltése verzió információkkal együtt). update Working copy frissítése a repository-ból (változások letöltése). (update to revision) commit Working copy változásainak feltöltése a repository-ba.

SVN tipikus napi munkamenet Munka előtt: update Working copy frissítése a repository-ból Munka után: commit Working copy változásainak feltöltése a repository-ba. Csak leforduló kódot commit-oljunk! (nem muszáj hogy végleges legyen) Használjunk tömör, de érthető megjegyzéseket a változások leírására!

SVN parancssorból svn status: A helyi és a repositoryban lévő változatok közötti különbségek lekérdezése. svn update: A szerver tartalmát a saját gépre tölteni svn commit: A saját módosításaink feltöltése a szerverre» message mező svn add: Új fájlok hozzáadása a repositoryhoz svn diff: Összevetés előző verziókkal svn co: checkout: Working copy létrehozása

GUI felület SVN-hez TortoiseSVN

Diff

Fájlok és mappák státusza Zöld» normál státusz Piros!» a fájlt módosították az utolsó update óta, commitolni(,) kellene Sárga» az update alatti hibára utal Szürke» szerkesztés előtt lock-olni kell Lakat» unlockonli kell, hogy más commitolhasson Piros X» hiányzó vagy már törölt Kék +» hozzáadva (még nincs commitolva)

Commit messages Angolul és szakszerű megfogalmazásokkal :) (a kép egy előző évfolyam kommentjeit mutatja, nem a példát)

Git 19

Git workflow Create a branch Add commits Open a Pull Request (Discuss and review your code) Deploy Merge

Multiple versions 1. Initial commit 2. Second commit Third commit Fourth commit Merge Bob gets a copy Bob s commit 21

Centralized VC vs. Distributed VC Central Server Remote Server

Git/Svn git pull git clone git commit -a git diff svn update svn checkout vagy svn co svn commit svn diff

GitHub 24

GitHub GitHub egy népszerű web alapú Git repository hostoló szolgáltatás ingyenes és fizetős hozzáféréssel. A jelképe: Octocat.

GitHub a böngészőben

GitHub for Windows Saját Windows és OSX klienssel rendelkezik

GitHub workflow Add commits Discuss and review CREATE A BRANCH Create a branch in your project where you can safely experiment and make changes. OPEN A PULL REQUEST Use a pull request to get feedback on your changes from people down the hall or ten time zones away. MERGE AND DEPLOY Merge your changes into your master branch and deploy your code.

Team Explorer Solution Explorer GitHub extension for Visual Studio

GitHub extension for Visual Studio

GitHub advenced search https://github.com/search/advanced

Branches Illustrated master A > git commit m my first commit

Branches Illustrated master A B C > git commit (x2)

Branches Illustrated master A B C bug123 > git checkout b bug123

Branches Illustrated master A B C D E bug123 > git commit (x2)

Branches Illustrated master A B C D E bug123 > git checkout master

Branches Illustrated A B C D E master bug123 > git merge bug123

Branches Illustrated A B C D E master > git branch -d bug123

Branches Illustrated A B C D E master F G bug456

Branches Illustrated A B C D E master F G bug456 > git checkout master

Branches Illustrated A B C D E H master F G bug456 > git merge bug456

Branches Illustrated A B C D E H master F G > git branch -d bug456

Branches Illustrated A B C D E master F G bug456

Branches Illustrated A B C D E master F G bug456 > git rebase master

Branches Illustrated A B C D E F G master bug456 > git checkout master > git merge bug456

Felhasznált irodalom http://en.wikipedia.org/wiki/revision_control http://hu.wikipedia.org/wiki/verziókezelés James Brucker: Using Subversion Mark Groves: Introducing Git version control http://guides.github.com/