Programmation Web Avan GIT Design of Web Applications 5 : Ov Previously... Introduction to Version Control and Git Git basics Schyzophrenic Git Collaborating using Git and GitLab (or github) Summing it up Design of Web Applications 5 : Ov Previously... Introduction to Version Control and Git Git basics Schyzophrenic Git Collaborating using Git and GitLab (or github) Summing it up Spring pour le coté serveu Nous avons utilisé maven, Spring, Spring boot (structure et compilatio l'architecture MVC Spring Web ( @Controller , ..., controlleur) Thymeleaf (vues) JPA ( @Entity , ..., modèle) Spring Data ( CrudRepository , ..., modèle) Nous verrons (coté serveur) la création d'API Rest la gestion des profils utilisateurs un peu de sécurité Les Projets But faire une application web avec génération de page en coté serveur avec serveur REST + client ReactJS Organisation équipes de 3 personnes composition des équipes pour lundi (10 oct.) soutenances le 2 décembre Conseils choisir/proposer son sujet commencer tout de suite (partie que serveur) utiliser git Détails sur le site, projets Design of Web Applications 5 : Ov Previously... Introduction to Version Control and Git Git basics Schyzophrenic Git Collaborating using Git and GitLab (or github) Summing it up
7
Embed
Previously Programmation Web Avancée GIT · Git (/ɡɪt/) is a distributed revision control and source code management (SCM) system with an emphasis on speed, data integrity, and
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Programmation Web AvancéeGIT
Design of Web Applications 5 : OverviewPreviously...
Introduction to Version Control and Git
Git basics
Schyzophrenic Git
Collaborating using Git and GitLab (or github)
Summing it up
Design of Web Applications 5 : OverviewPreviously...
Introduction to Version Control and Git
Git basics
Schyzophrenic Git
Collaborating using Git and GitLab (or github)
Summing it up
Spring pour le coté serveurNous avons utilisé
maven, Spring, Spring boot (structure et compilation)l'architecture MVCSpring Web ( @Controller , ..., controlleur)Thymeleaf (vues)JPA ( @Entity , ..., modèle)Spring Data ( CrudRepository , ..., modèle)
Nous verrons (coté serveur)la création d'API Restla gestion des profils utilisateursun peu de sécurité
Les ProjetsBut
faire une application webavec génération de page en coté serveuravec serveur REST + client ReactJS
Organisationéquipes de 3 personnescomposition des équipes pour lundi (10 oct.)soutenances le 2 décembre
Conseilschoisir/proposer son sujetcommencer tout de suite (partie que serveur)utiliser git
Détails sur le site, projets
Design of Web Applications 5 : OverviewPreviously...
Introduction to Version Control and Git
Git basics
Schyzophrenic Git
Collaborating using Git and GitLab (or github)
Summing it up
About YouWho already knows Git?
Who knows any of these?CVS, Subversion,Mercurial, Baz, GnuArch
About This PresentationObjectives
get convinced by version control systemslearn practical Git skillslearn about GitLab for collaborationhands on with some “code” (latex document)
Don't Hesitateto ask questionsto interrupt meto ping me after, when trying to practice
Design of Web Applications 5 : OverviewPreviously...
Introduction to Version Control and Git
Git basics
Schyzophrenic Git
Collaborating using Git and GitLab (or github)
Summing it up
Version Control: What?A version control system (VCS)
records what you and your collaborators have doneallows easy replication across machinesallows you to easily see changesallows you to easily experiment new things
Why dropbox/google drive/... is not sufficientsafety of your dataownership of your datasemantics of your changes
Why CVS/Subversion might not be sufficientcentralized : a host of the repositoryworking in the train/plane/countrysidespeed limit
Git
Git (/ɡɪt/) is a distributed revision control and source code management(SCM) system with an emphasis on speed, data integrity, and support fordistributed, non-linear workflows. Git was initially designed anddeveloped by Linus Torvalds for Linux kernel development in 2005, andhas since become the most widely adopted version control system forsoftware development.
History of Gitopen sourceinitiated by Linus Torvaldsfirst release: 7 April 2005version 2.1.2: 30 September 2014fast and efficient
Design of Web Applications 5 : OverviewPreviously...
Introduction to Version Control and Git
Git basics
Schyzophrenic Git
Collaborating using Git and GitLab (or github)
Summing it up
Starting with GitInitializing your projectgit init
What's up?git status
Deciding what is relevantgit add file1 file2 …git commit
first: introduce yourself
Let's try itcp -r base mypaper ; cd mypaper
git init
git statusgit add mypaper.tex cvpr.stygit statusgit commitgit status
Nota Bene (vs CVS, Subversion)You have the complete repository
have all commits locallycommit often, fast and everywhere (train, plane, here)merge with 0-stresswarning: commit ≠ backup
Need to “git add” modifications
Repository == projectSVN has a big tree-shaped repositorySVN allows to "checkout" any subtreeGit works at the repository levelyou'll have a set of repositorycommits are at the repository level
GUI for GitBundled with git: git gui
Many others (gitg, qgit, GitX, tortoisegit, Netbeans, ...)
avoid committingbinary files that change often (NB: word/excel/... are binary)generated files (that can be regenerated in a reasonable time)temporary files
keep your git status clean
don't put git repositories inside git repositories
more
Design of Web Applications 5 : OverviewPreviously...
Introduction to Version Control and Git
Git basics
Schyzophrenic Git
Collaborating using Git and GitLab (or github)
Summing it up
What is GitLab (and GitHub)GitLab
a company providing support and advanced featuresan open source project (Community Edition)a web applicationcollaboration platformhosting git repositoriesvisualizing repositoriesmanaging issues/tickets
groups of users (e.g., PhD student and supervisors)automatic access to the projects of the group
Forkingtake a repository on GitLabmake a “personal” copy of this repository (still on GitLab)
Merge requests (pull requests in GitHub)ask for another repo to integrate changes from your fork
Issuesbugquestionsfeature requests
Wikis
Design of Web Applications 5 : OverviewPreviously...
Introduction to Version Control and Git
Git basics
Schyzophrenic Git
Collaborating using Git and GitLab (or github)
Summing it up
Key PointsVersion control
keep track of what happenedstore semantic snapshots/versions of your “code”
Git“distributed” version control: you have a complete repositoryefficient and widely usedone repository per project
GitLab : a place to share repositories (projects)visualization of the repositories, wiki pages, issue tracker, groups of users (e.g., PhD student and supervisors)