Software Engineering
|
|
- Martina Short
- 6 years ago
- Views:
Transcription
1 Software Engineering CSC 331/631 - Spring 2018 Version Control with Git Paul Pauca March 27
2 SE Theory: Version Control Systems Link to video lectures (Soft Dev Proc part 1 of 3) Watch these short videos on your own (54-60) VCS basics, dos and don ts, VCS types (61-64) Git basics
3 Using Git
4
5 Typical day-to-day use cases Create a local repository $ git init $ git add Add files/directories to the workspace Add changes to the staging area and commit changes to the local repo $ git commit -a -m comment $ git status $ git diff Obtain the status of files in the workspace Compare differences wrt to the local repo Obtain history of changes in the repo $ git log Revert to a previous version $ git reset --hard
6 Git Story 1 Narrative: As owner of an existing code project I want to create a local repo, add, commit, and track changes to files So that I can document and keep better track of my code changes over time
7 Scenario 1.1 Creating a local repository Given I am in my project s directory sampleapp using terminal/command prompt When I type: git init Then a local git repo is created in sampleapp/.git $ cd sampleapp $ git init Initialized empty Git repository in sampleapp/.git/ Your workspace is in sampleapp,.git/ is the local repo You can cd into.git to look but don t change anything!
8 Scenario 1.2 Checking status of files in your project directory Given I am on sampleapp and local repo exists When I type: git status Then I get the current status of files/directories in the workspace We don t want this folder in the $ git status On branch master repo! Initial commit Untracked files: (use "git add <file>..." to include in what will be committed) index.html node_modules/ package.json server.js nothing added to commit but untracked files present (use "git add" to track)
9 Ignoring stuff in the workspace What to ignore Binary files, libraries/modules, Word, Excel, etc. E.g. node_modules How? Create file.gitignore and specify the names of the files or folders to ignore.
10 Scenario 1.3 Adding new files to the workspace Given a directory I want to track using git When I type: git add. Then all files and directories in. will be added to the workspace $ git add. Check the status of your files to confirm If the file is not empty, then it is also added to the staging area
11 Scenario 1.4 Committing files to the local repo Give I have changes in my files When I type: git commit -a -m comment Then the changes files will be added to the staging area and committed to the local repo with the comment I provided $ git commit -m "server implements GET verb [master (root-commit) 28a3ea6] server implements GET verb Committer: Victor Pauca <pauca@victors-macbook-pro.local> 1 file changed, 24 insertions(+) create mode server.js
12 Each commit creates a new tracked version for each file in the local repo.
13 Gotchas! The staging area is emptied once files are committed Files in the workspace must be added first before they are committed to the local repo. Typical failure: forget to add first I modified a file and I commit: git commit -m No version created in the local repo Best to add and commit simultaneously $ git commit a m adding and committing
14 Scenario 1.5 Determining differences wrt to version in local repo Given I made changes to files in the workspace and I want to check those changes relative to the version in the local repo When I type: git diff Then I will get the differences between my files and those in the local repo $ git diff diff --git a/index.html b/index.html index e992c6a..d5d a/index.html ,6 <body> <h1>hello Wake</h1> +<h2>good bye </h2> </body> </html>
15 Scenario 1.6 List history of files in the local repo Given I have committed many files to local repo When I type: git log Then I will get the history of all commits (versions) in the local repo $ git log commit 4481d4163d438eafd718f6e c54db33a25 Author: Paul Pauca <paucavp@wfu.edu> Date: Wed Feb 15 13:29: added 404.html commit 38cd4b0431b5dc75f5125feb9fe58f1877a15848 Author: Paul Pauca <paucavp@wfu.edu> Date: Wed Feb 15 13:29: added login.html commit eea30aec2b496fbdebf236d7a98e8eb4722fd8ba Author: Paul Pauca <paucavp@wfu.edu> Date: Wed Feb 15 11:49: added json file and commited changes to index.html commit 45db3b870fad b23152c51712d755f Author: Paul Pauca <paucavp@wfu.edu> Date: Wed Feb 15 11:36: added html file commit 28a3ea63a98e52bba4eb0f05531f25279aba1b93 Author: Victor Pauca <pauca@victors-macbook- Pro.local> Date: Wed Feb 15 08:42: server implements GET verb
16 Scenario 1.7 Reverting to a previous version Given that I am in my project directory and know the ID of the version I want to revert to When I type: git reset hard ID Then my project directory contents are reset to the contents of version ID in the local repo AND this version is now the latest version $ git reset --hard 38cd4b0431b5dc75f5125feb9fe58f1877a15848 HEAD is now at 38cd4b0 added login.html File 404.html is no longer in the project directory (see previous slide)
17 Working with Branches Branch: separate snapshot of your current code Big Idea: create a branch when working on a new feature Established workflows used in practice, e.g. gitflow Gitflow Workflow:
18 Typical use cases Create a new branch in the local repo $ git branch newbranchname List all the branches in the local repo $ git branch -a Checkout a branch or switch to another branch $ git checkout branchname Tell what branch you are working on $ git branch
19 Git Story 2 Narrative: As a developer I want to use git branches So that features can be independently added to my code without braking the main working branch
20 Scenario 2.1 Creating a branch in the local repo Given I am in my project s directory When I type: git branch <branchname> Then a new branch is created in my local repo from the master branch $ git branch databasefeature List all the branches in the local repo $ git branch -a #list all branches databasefeature * master Workspace shows content of this branch
21 Scenario 2.2 Checking out a branch Given I am in my project s directory When I type: git checkout <branchname> Then my directory switches to the contents of the latest version in branchname $ git checkout databasefeature Switched to branch databasefeature' Now I can code, test and version my database code without affecting the master branch
22 You can add and commit files in this branch as before. Git log only shows the history of this branch.
23 Scenario 2.3 Switching branches Given that I am on a git branch When I type: git checkout <otherbranch> Then my directory switches to the contents of the latest version in otherbranch $ git checkout databasefeature Switched to branch databasefeature' $ ls index.html movies.html package.json login.html node_modules/ server.js $ git checkout master Switched to branch 'master' $ ls index.html login.html node_modules/ package.json server.js
24 Credit: Working with a Remote Repository Allows collaboration by a team
25 Typical use cases Add a remote repository $ git remote add origin URL Push changes to the remote repository $ git push -u origin master Fetch changes from the remote repository $ git fetch Merge my changes locally with the version in the the remote repository $ git merge Pull changes to my work space from the remote repo $ git pull Resolving merge conflicts
26 Git Story 3 Narrative: As a developer working in a team I want to use a remote repository So that I can share my working code with others in the team and update my code with what others developed
27 Scenario 3.1 Adding a remote repository Given that I know the URL to my new repository in Github And I am in the directory for my local master branch When I type: git remote add origin <URL> Then the remote repo in URL is recorded as origin in my computer $ git remote add origin Pushing changes to the remote repository Given that I want to push my local repo to the remote repo When I type: git push -u origin master Then my local repository is pushed to origin $ git push -u origin master
28 Scenario 3.2 Pushing local changes to remote repo Given I have remote changes committed locally And I am in the master branch When I type: git push Then my Github repo is updated with my changes $ git push # or $ git push origin master Caution: push fails if the local repo is behind the remote repo
29 Scenario 3.3 Fetching changes from the remote repo Given that I want to update my local repo with respect to latest commits in the remote repo When I type: git fetch Then my local repo is updated but my workspace is not changed. $ git fetch
30 Scenario 3.4 Merging my workspace with the latest commit in the local repo Given that I fetched the latest changes from the remote repo When I type: git merge Then my workspace is updated with changes brought from the remote repo $ git merge Recall: git pull is the same thing as git fetch followed by git merge
31 Resolving Merge Conflicts Using the command line Using a merge tool f19ff75c60f18b4b8149 Other Moving the local repo back to pre-merge state git reset --hard HEAD^
32 Tagging A tag is a version in the repository with specific historical importance E.g. v0.1, v0.2, v1.0, etc.
33 Git Story 4 Narrative As a developer I would like to create tagged releases and upload them to my remote repository So that releases can be properly document and shared
34 Scenario 4.1 Creating an annotated tag Given I have working version in my local repo When I type: git tag -a VER -m comment Then a version is committed with tag name VER $ git tag -a v0.1 -m first version deployed to Heroku
35 Scenario 4.2 Creating a lightweight tag Given I have working version in my local repo When I type: git tag VER Then a file with a checksum of is saved for VER $ git tag v0.1-lightweight
36 Obtaining info on my tags Given I have a tag saved as VER When I type: git show VER Then I get information about this tag $ git showtag v0.1 tag v0.1 Tagger: Paul Pauca <pauca@barza.cs.wfu.edu> Date: Tue Mar 27 13:41: first version deployed to Heroku Scenario 4.3 commit 3eb602806fa83d f7fe36e09cc88729b9f (HEAD -> master, tag: v0.1, origin/master) Author: Paul Pauca <pauca@barza.cs.wfu.edu> Date: Mon Mar 26 14:45: adding a readme file diff --git a/readme b/readme new file mode index aa26bfd --- /dev/null ,0 +# Sample app for Software Engineering 331/631 Tagger: Paul Pauca <pauca@barza.cs.wfu.edu> Date: Tue Mar 27 13:41: first version deployed to Heroku commit 3eb602806fa83d f7fe36e09cc88729b9f (HEAD -> master, tag: v0.1, origin/master) Author: Paul Pauca <pauca@barza.cs.wfu.edu> Date: Mon Mar 26 14:45: adding a readme file diff --git a/readme b/readme new file mode index aa26bfd --- /dev/null ,0 +# Sample app for Software Engineering 331/631
37 Scenario 4.4 Sharing a tag Given I have a tagged version in my computer When I type: git push origin VER Then tag VER is sent to the remote repository $ git push origin v0.1
FAQ Q: Where/in which branch do I create new code/modify existing code? A: Q: How do I commit new changes? A:
FAQ Q: Where/in which branch do I create new code/modify existing code? A: We strongly recommend only modifying the source code within the local master branch: Git Repository View Woped repository Branches
More informationIntroduction to Git and Github
Introduction to Git and Github Computing in Optimization and Statistics: Lecture 1 Jackie Baek MIT January 10, 2017 What is git and GitHub? git is a version control system. Other version control systems
More informationGit, the magical version control
Git, the magical version control Git is an open-source version control system (meaning, it s free!) that allows developers to track changes made on their code files throughout the lifetime of a project.
More informationGit. Presenter: Haotao (Eric) Lai Contact:
Git Presenter: Haotao (Eric) Lai Contact: haotao.lai@gmail.com 1 Acknowledge images with white background is from the following link: http://marklodato.github.io/visual-git-guide/index-en.html images with
More informationUse git rm to remove files from workspace
More Git: Removing files from the repository Branches, tags, merge conflicts Pull requests CPSC 491 First: Get up to speed from last time Removing files from your workspace Use git rm to remove files from
More informationReview Version Control Concepts
Review Version Control Concepts SWEN-261 Introduction to Software Engineering Department of Software Engineering Rochester Institute of Technology Managing change is a constant aspect of software development.
More information1/20/13 Git tutorial. Git tutorial. Mike Nolta. file:///users/nolta/github/reveal.js/git.html?print-paper#/ 1/31
Git tutorial Mike Nolta file:///users/nolta/github/reveal.js/git.html?print-paper#/ 1/31 1. Basics file:///users/nolta/github/reveal.js/git.html?print-paper#/ 2/31 Tell git who you are $ git config --global
More informationCPSC 491. Lecture 19 & 20: Source Code Version Control. VCS = Version Control Software SCM = Source Code Management
CPSC 491 Lecture 19 & 20: Source Code Version Control VCS = Version Control Software SCM = Source Code Management Exercise: Source Code (Version) Control 1. Pretend like you don t have a version control
More informationGit. Charles J. Geyer School of Statistics University of Minnesota. Stat 8054 Lecture Notes
Git Charles J. Geyer School of Statistics University of Minnesota Stat 8054 Lecture Notes 1 Before Anything Else Tell git who you are. git config --global user.name "Charles J. Geyer" git config --global
More informationKTH Royal Institute of Technology SEMINAR 2-29 March Simone Stefani -
KTH Royal Institute of Technology SEMINAR 2-29 March 2017 Simone Stefani - sstefani@kth.se WHAT IS THIS SEMINAR ABOUT Branching Merging and rebasing Git team workflows Pull requests and forks WHAT IS THIS
More informationRevision control. INF5750/ Lecture 2 (Part I)
Revision control INF5750/9750 - Lecture 2 (Part I) Problem area Software projects with multiple developers need to coordinate and synchronize the source code Approaches to version control Work on same
More informationVersion Control with GIT
Version Control with GIT Benjamin Roth CIS LMU München Benjamin Roth (CIS LMU München) Version Control with GIT 1 / 30 Version Control Version control [...] is the management of changes to documents, computer
More informationGit. CSCI 5828: Foundations of Software Engineering Lecture 02a 08/27/2015
Git CSCI 5828: Foundations of Software Engineering Lecture 02a 08/27/2015 1 Lecture Goals Present a brief introduction to git You will need to know git to work on your presentations this semester 2 Git
More information2 Initialize a git repository on your machine, add a README file, commit and push
BioHPC Git Training Demo Script First, ensure that git is installed on your machine, and you have configured an ssh key. See the main slides for instructions. To follow this demo script open a terminal
More informationSubmitting your Work using GIT
Submitting your Work using GIT You will be using the git distributed source control system in order to manage and submit your assignments. Why? allows you to take snapshots of your project at safe points
More informationgit commit --amend git rebase <base> git reflog git checkout -b Create and check out a new branch named <branch>. Drop the -b
Git Cheat Sheet Git Basics Rewriting Git History git init Create empty Git repo in specified directory. Run with no arguments to initialize the current directory as a git repository. git commit
More informationLecture 6 Remotes. Sign in on the attendance sheet!
Lecture 6 Remotes Sign in on the attendance sheet! Midterm Review Everyone did great! What We ve Learned So Far Creating and cloning repositories git init, git clone Linear commit histories and diffs git
More informationObject Oriented Programming. Week 1 Part 2 Git and egit
Object Oriented Programming Part 2 Git and egit Lecture Review of Git Local Repository Remote Repository Using Git from Eclipse Review of Git 3 What is Git? Software Configuration Management (SCM) Supports
More informationBranching and Merging
Branching and Merging SWEN-261 Introduction to Software Engineering Department of Software Engineering Rochester Institute of Technology Version control branching supports the ability to manage software
More informationb. Developing multiple versions of a software project in parallel
Multiple-Choice Questions: 1. Which of these terms best describes Git? a. Integrated Development Environment b. Distributed Version Control System c. Issue Tracking System d. Web-Based Repository Hosting
More informationIndex. Alias syntax, 31 Author and commit attributes, 334
Index A Alias syntax, 31 Author and commit attributes, 334 B Bare repository, 19 Binary conflict creating conflicting changes, 218 during merging, 219 during rebasing, 221 Branches backup, 140 clone-with-branches
More informationSoftware Development I
6.148 Software Development I Two things How to write code for web apps. How to collaborate and keep track of your work. A text editor A text editor A text editor Anything that you re used to using Even
More informationSalvatore Rinzivillo VISUAL ANALYTICS
Salvatore Rinzivillo VISUAL ANALYTICS Announcment No lesson on March 5th We will meet on March 6th from 11 to 13 in Aula N1 DEVELOPMENT FRAMEWORK Objectives Setup a developing environment Install Node.js
More informationBarry Grant
Barry Grant bjgrant@umich.edu http://thegrantlab.org What is Git? (1) An unpleasant or contemptible person. Often incompetent, annoying, senile, elderly or childish in character. (2) A modern distributed
More informationMidterm Next Week. Last year s midterm (which didn t include remotes): https://www.andrew.cmu.edu/course/98-174/f17/midterm/midterm.
Lecture 5 Remotes Midterm Next Week No stressing allowed! 50 minutes in-class. You probably won t need the whole time. You can use the Git man pages and the lecture slides, but no googling Questions very
More informationTizen/Artik IoT Practice Part 4 Open Source Development
1 Tizen/Artik IoT Practice Part 4 Open Source Development Sungkyunkwan University Contents 2 SCM Tool: Git Version Management Local & Remote Repository Branch Management Github Contribution Process Issue
More informationWhat is Git? What is Git? Version Control. Barry Grant
What is Git? (1) An unpleasant or contemptible person. Often incompetent, annoying, senile, elderly or childish in character. Barry Grant bjgrant@ucsd.edu http://thegrantlab.org (2) A modern distributed
More informationA L A TEX-oriented intro to Git
A L A TEX-oriented intro to Git the tex part is in the interactive demo not in the slides Danielle Amethyst Brake 22 October - 26 November, 2018 ICERM Semester on Nonlinear Algebra Inter-week collaboration
More information1. Which of these Git client commands creates a copy of the repository and a working directory in the client s workspace. (Choose one.
Multiple-Choice Questions: 1. Which of these Git client commands creates a copy of the repository and a working directory in the client s workspace. (Choose one.) a. update b. checkout c. clone d. import
More informationCESSDA Expert Seminar 13 & 14 September 2016 Prague, Czech Republic
CESSDA Expert Seminar 13 & 14 September 2016 Prague, Czech Republic - basics Matthäus Zloch GESIS Outline for this session Git introduction and some theory Git command basics (plus some little advanced)
More informationHow to be a git. Dominic Mitchell
How to be a git Dominic Mitchell Git! It s new! Everybody s talking about it! What is it? Distributed Version Control Why Git? Fast Local Toolkit Widely used Github Toolkit lets other people build tools
More informationFEEG Applied Programming 3 - Version Control and Git II
FEEG6002 - Applied Programming 3 - Version Control and Git II Richard Boardman, Sam Sinayoko 2016-10-19 Outline Learning outcomes Working with a single repository (review) Working with multiple versions
More informationGit tutorial. Katie Osterried C2SM. October 22, 2015
Git tutorial Katie Osterried C2SM October 22, 2015 Outline 1 What is Git and why are we switching? 2 Working with Git 3 Branching and Merging 4 Working with remote repositories 5 Recommendations Outline
More informationUsing Git to Manage Source RTL
Using Git to Manage Source RTL CS250 Tutorial 1 (Version 082311) August 24, 2011 Brian Zimmer How to use this tutorial This class will be using Git for all of the labs and projects. This will allow the
More informationGETTING TO KNOW GIT: PART II JUSTIN ELLIOTT PENN STATE UNIVERSITY
GETTING TO KNOW GIT: PART II JUSTIN ELLIOTT PENN STATE UNIVERSITY 1 REVERTING CHANGES 2 REVERTING CHANGES Change local files git reset git checkout Revert a commit in the branch history git revert Reset
More informationTopics covered. Introduction to Git Git workflows Git key concepts Hands on session Branching models. Git 2
Git Git 1 Topics covered Introduction to Git Git workflows Git key concepts Hands on session Branching models Git 2 Introduction to Git Git 3 Version control systems The source files of a project changes
More informationVersion Control System GIT
Version Control System GIT Version Contol System Version (revision) control systems are software that help you track changes you make in your code over time. As you edit to your code, you tell the version
More informationBeyond git add/commit/push
add Working dir commit Staging area push Local Remote Based on original version made by Alexis López @aa_lopez About us @tuxtor @edivargas jorgevargas.mx github.com/tuxtor Review traditionals commands
More informationSoftware Project (Lecture 4): Git & Github
Software Project (Lecture 4): Git & Github Wouter Swierstra, Atze Dijkstra Feb 2016 Wouter Swierstra, Atze Dijkstra Software Project (Lecture 4): Git & Github Feb 2016 1 / 45 Wouter Swierstra, Atze Dijkstra
More informationGit for Version Control
Git for Version Control These slides are heavily based on slides created by Ruth Anderson for CSE 390a. Thanks, Ruth! images taken from http://git-scm.com/book/en/ http://www.cs.washington.edu/403/ About
More informationFundamentals of Git 1
Fundamentals of Git 1 Outline History of Git Distributed V.S Centralized Version Control Getting started Branching and Merging Working with remote Summary 2 A Brief History of Git Linus uses BitKeeper
More informationGit Guide. Meher Krishna Patel. Created on : Octorber, 2017 Last updated : October, More documents are freely available at PythonDSP
Git Guide Meher Krishna Patel Created on : Octorber, 2017 Last updated : October, 2018 More documents are freely available at PythonDSP Table of contents Table of contents i 1 Commands Summary 1 2 Git
More informationVersioning with git. Moritz August Git/Bash/Python-Course for MPE. Moritz August Versioning with Git
Versioning with git Moritz August 13.03.2017 Git/Bash/Python-Course for MPE 1 Agenda What s git and why is it good? The general concept of git It s a graph! What is a commit? The different levels Remote
More informationGIT. CS 490MT/5555, Spring 2017, Yongjie Zheng
GIT CS 490MT/5555, Spring 2017, Yongjie Zheng GIT Overview GIT Basics Highlights: snapshot, the three states Working with the Private (Local) Repository Creating a repository and making changes to it Working
More informationAbout SJTUG. SJTU *nix User Group SJTU Joyful Techie User Group
About SJTUG SJTU *nix User Group SJTU Joyful Techie User Group Homepage - https://sjtug.org/ SJTUG Mirrors - https://mirrors.sjtug.sjtu.edu.cn/ GitHub - https://github.com/sjtug Git Basic Tutorial Zhou
More informationTools for software development:
Tools for software development: Version Control System Source Control Management Repository commit An introduction push Data Processing Course, V. Lafage, IPN Orsay V. Lafage @ Data Processing Course 2019
More informationHow to version control like a pro: a roadmap to your reproducible & collaborative research
How to version control like a pro: a roadmap to your reproducible & collaborative research The material in this tutorial is inspired by & adapted from the Software Carpentry lesson on version control &
More informationWorking in Teams CS 520 Theory and Practice of Software Engineering Fall 2018
Working in Teams CS 520 Theory and Practice of Software Engineering Fall 2018 Version Control September 18, 2018 Thursday (September 20) First in-class exercise On using git (today is a prelude with useful
More informationLab 08. Command Line and Git
Lab 08 Command Line and Git Agenda Final Project Information All Things Git! Make sure to come to lab next week for Python! Final Projects Connect 4 Arduino ios Creative AI Being on a Team - How To Maximize
More informationChapter 5. Version Control: Git
Chapter 5 Version Control: Git The Replication Crisis continues to heat up discussion across social science. Hence principled researchers want to make their work easy to replicate and reputable journals
More informationGit for Subversion users
Git for Subversion users Zend webinar, 23-02-2012 Stefan who? Stefan who? Freelancer: Ingewikkeld Stefan who? Freelancer: Ingewikkeld Symfony Community Manager Stefan who? Freelancer: Ingewikkeld Symfony
More informationVersion control CSE 403
Version control CSE 403 Goals of a version control system Keep a history of your work Explain the purpose of each change Checkpoint specific versions (known good state) Recover specific state (fix bugs,
More informationThe Old World. Have you ever had to collaborate on a project by
What the Git? The Old World Have you ever had to collaborate on a project by Shuttling a USB drive back and forth Using Dropbox E-mailing your document around Have you ever accidentally deleted someone
More informationLab Objective. Lab Assignment. Downloads and Installation
How I Start Working with Git: Git Lab 01 Adapted from: (1) https://github.com/quantstack/xeus-cling (2) https://code.visualstudio.com/docs/languages/cpp Lab Objective 1. Installing and using VS Code 2.
More informationCS 320 Introduction to Software Engineering Spring February 06, 2017
CS 320 Introduction to Software Engineering Spring 2017 February 06, 2017 Recap: Software development process models Traditional models Waterfall model Iterative and incremental Prototyping Spiral model
More informationRevision control Advanced git
Revision control Advanced git Waterford Institute of Technology April 30, 2016 John Fitzgerald Waterford Institute of Technology, Revision controladvanced git 1/35 Presentation outline Estimated duration
More informationLaboratorio di Programmazione. Prof. Marco Bertini
Laboratorio di Programmazione Prof. Marco Bertini marco.bertini@unifi.it http://www.micc.unifi.it/bertini/ Code versioning: techniques and tools Software versions All software has multiple versions: Each
More informationVersion Control: Gitting Started
ting Started Cai Li October 2014 What is Version Control? Version control is a system that records changes to a file or set of files over time so that you can recall specific versions later. Local Version
More informationgit Version: 2.0b Merge combines trees, and checks out the result Pull does a fetch, then a merge If you only can remember one command:
Merge combines trees, and checks out the result Pull does a fetch, then a merge If you only can remember one command: git --help Get common commands and help git --help How to use git
More informationGIT Princípy tvorby softvéru, FMFI UK Jana Kostičová,
GIT Princípy tvorby softvéru, FMFI UK Jana Kostičová, 25.4.2016 Basic features Distributed version control Developed in 2005, originally for Linux kernel development Free, GNU General Public License version
More informationGit Workflows. Sylvain Bouveret, Grégory Mounié, Matthieu Moy
s Sylvain Bouveret, Grégory Mounié, Matthieu Moy 2017 [first].[last]@imag.fr http://recherche.noiraudes.net/resources/git/git-workflow-slides.pdf 1 / 16 Goals of the presentation Global history: multiple
More informationVersion control CSE 403
Version control CSE 403 Goals of a version control system Keep a history of your work Explain the purpose of each change Checkpoint specific versions (known good state) Recover specific state (fix bugs,
More informationWindows. Everywhere else
Git version control Enable native scrolling Git is a tool to manage sourcecode Never lose your coding progress again An empty folder 1/30 Windows Go to your programs overview and start Git Bash Everywhere
More informationAIS Grid School 2015
Getting distributed without losing your HEAD AIS Grid School 2015 Дубна, Россия 3 e Oктября 2015 Benjamin Wolff (CERN / GS-AIS) Logo source: http://git-scm.com/downloads/logos What is a Version Control
More informationGit better. Collaborative project management using Git and GitHub. Matteo Sostero March 13, Sant Anna School of Advanced Studies
Git better Collaborative project management using Git and GitHub Matteo Sostero March 13, 2018 Sant Anna School of Advanced Studies Let s Git it done! These slides are a brief primer to Git, and how it
More informationFrom Commits to Collaboration: A Git Tutorial for Social Scientists
From Commits to Collaboration: A Git Tutorial for Social Scientists Paul Sangrey, University of Pennsylvania December 12, 2017 The Replication Crisis continues to heat up discussion across social science.
More informationOutline. Version Control System (VCS) basics Git terminology & concepts Basic Git commands Branches in Git Git over the network (time permitting)
Outline Version Control System (VCS) basics Git terminology & concepts Basic Git commands Branches in Git Git over the network (time permitting) Why do I need version control? How many lines of code was
More informationAdvanced Operating Systems Control Versioning with GIT. Giuseppe Massari
Control Versioning with GIT Giuseppe Massari giuseppe.massari@polimi.it Outline 2/54 Why using version control tools? Why Git? First steps Getting help and configuration Basic concepts Local repository
More informationAgenda. - Final Project Info. - All things Git. - Make sure to come to lab for Python next week
Lab #8 Git Agenda - Final Project Info - All things Git - Make sure to come to lab for Python next week Final Project Low Down The Projects are Creative AI, Arduino, Web Scheduler, ios and Connect 4 Notes
More informationGithub/Git Primer. Tyler Hague
Github/Git Primer Tyler Hague Why Use Github? Github keeps all of our code up to date in one place Github tracks changes so we can see what is being worked on Github has issue tracking for keeping up with
More informationLab 01 How to Survive & Introduction to Git. Web Programming DataLab, CS, NTHU
Lab 01 How to Survive & Introduction to Git Web Programming DataLab, CS, NTHU Notice These slides will focus on how to submit you code by using Git command line You can also use other Git GUI tool or built-in
More informationVersion control with Git.
1 Version control with Git http://git-scm.com/book/en/ Basic Intro to Git We will: Discuss how Git differs from Subversion Discuss the basic Git model Pull/clone files from a repository on github Edit
More informationWhat is version control? (discuss) Who has used version control? Favorite VCS? Uses of version control (read)
1 For the remainder of the class today, I want to introduce you to a topic we will spend one or two more classes discussing and that is source code control or version control. What is version control?
More informationGetting the files for the first time...2. Making Changes, Commiting them and Pull Requests:...5. Update your repository from the upstream master...
Table of Contents Getting the files for the first time...2 Making Changes, Commiting them and Pull Requests:...5 Update your repository from the upstream master...8 Making a new branch (for leads, do this
More informationSource Code Management wih git
Source Code Management wih git Matthieu Herrb December 22 http://homepages.laas.fr/matthieu/cours/git.pdf Licence This work is licensed under a Creative Commons Attribution-ShareAlike 3. Unported License.
More informationGit AN INTRODUCTION. Introduction to Git as a version control system: concepts, main features and practical aspects.
Git AN INTRODUCTION Introduction to Git as a version control system: concepts, main features and practical aspects. Have you ever lost your work? 3/10/2017 Version Control with Git 2 Have you ever lost
More informationEECS 470 Lab 4. Version Control System. Friday, 31 st January, 2014
EECS 470 Lab 4 Version Control System Department of Electrical Engineering and Computer Science College of Engineering University of Michigan Friday, 31 st January, 2014 (University of Michigan) Lab 4:
More informationHg Tutorial. For : COP Object oriented Programming (Using C++) Biswas Parajuli
Hg Tutorial For : COP 3330. Object oriented Programming (Using C++) http://www.compgeom.com/~piyush/teach/3330 Biswas Parajuli Need for Version Control http://hginit.com/01.html Repository Working directory:
More informationImproving Your Life With Git
Improving Your Life With Git Lizzie Lundgren elundgren@seas.harvard.edu Graduate Student Forum 26 April 2018 Scenarios to Avoid My code was deleted from 90-day retention! Crap, I can t remember what I
More informationVersion Control Systems
Version Control Systems Version Control In the 2 nd edition of Pro Git, version control is described as a system that records changes to a file or set of files over time so that you can recall specific
More informationGit AN INTRODUCTION. Introduction to Git as a version control system: concepts, main features and practical aspects.
Git AN INTRODUCTION Introduction to Git as a version control system: concepts, main features and practical aspects. How do you share and save data? I m working solo and I only have one computer What I
More informationIntroduction to Git and GitHub for Writers Workbook February 23, 2019 Peter Gruenbaum
Introduction to Git and GitHub for Writers Workbook February 23, 2019 Peter Gruenbaum Table of Contents Preparation... 3 Exercise 1: Create a repository. Use the command line.... 4 Create a repository...
More informationGit Tutorial. André Sailer. ILD Technical Meeting April 24, 2017 CERN-EP-LCD. ILD Technical Meeting, Apr 24, 2017 A. Sailer: Git Tutorial 1/36
ILD Technical Meeting, Apr 24, 2017 A. Sailer: Git Tutorial 1/36 Git Tutorial André Sailer CERN-EP-LCD ILD Technical Meeting April 24, 2017 LD Technical Meeting, Apr 24, 2017 A. Sailer: Git Tutorial 2/36
More informationCS 390 Software Engineering Lecture 5 More Git
CS 390 Software Engineering Lecture 5 More Git Reference: Scott Chacon and Ben Straub, Pro Git, published by Apress, available at https://git-scm.com/book/en/v2. Outline Finish local repository Remote
More informationVersion Control with Git
Version Control with Git Xiaoxu Guan High Performance Computing, LSU November 11, 2015 (https://www.atlassian.com/git/tutorials) LSU HPC Training Series, Fall 2015 p. 1/52 Overview Why should we use a
More informationGit AN INTRODUCTION. Introduction to Git as a version control system: concepts, main features and practical aspects.
Git AN INTRODUCTION Introduction to Git as a version control system: concepts, main features and practical aspects. How do you share and save data? I m working solo and I only have one computer What I
More informationGit. all meaningful operations can be expressed in terms of the rebase command. -Linus Torvalds, 2015
Git all meaningful operations can be expressed in terms of the rebase command -Linus Torvalds, 2015 a talk by alum Ross Schlaikjer for the GNU/Linux Users Group Sound familiar? add commit diff init clone
More informationUSING GIT FOR AUTOMATION AND COLLABORATION JUSTIN ELLIOTT - MATT HANSEN PENN STATE UNIVERSITY
USING GIT FOR AUTOMATION AND COLLABORATION JUSTIN ELLIOTT - MATT HANSEN PENN STATE UNIVERSITY AGENDA Version control overview Introduction and basics of Git Advanced Git features Collaboration Automation
More informationVersion Control Systems (VCS)
Version Control Systems (VCS) Xianyi Zeng xzeng@utep.edu Department of Mathematical Sciences The University of Texas at El Paso. September 13, 2016. Version Control Systems Let s get the textbook! Online
More informationGit Basi, workflow e concetti avanzati (pt2)
Git Basi, workflow e concetti avanzati (pt2) Andrea Fornaia, Ph.D. Department of Mathema.cs and Computer Science University of Catania Viale A.Doria, 6-95125 Catania Italy fornaia@dmi.unict.it hfp://www.cs.unict.it/~fornaia/
More informationGit. A Distributed Version Control System. Carlos García Campos
Git A Distributed Version Control System Carlos García Campos carlosgc@gnome.org Carlos García Campos carlosgc@gnome.org - Git 1 A couple of Quotes For the first 10 years of kernel maintenance, we literally
More informationCSC 2700: Scientific Computing
CSC 2700: Scientific Computing Record and share your work: revision control systems Dr Frank Löffler Center for Computation and Technology Louisiana State University, Baton Rouge, LA Feb 13 2014 Overview
More informationCS 520: VCS and Git. Intermediate Topics Ben Kushigian
CS 520: VCS and Git Intermediate Topics Ben Kushigian https://people.cs.umass.edu/~rjust/courses/2017fall/cs520/2017_09_19.zip Our Goal Our Goal (Overture) Overview the basics of Git w/ an eye towards
More information[Software Development] Development Tools. Davide Balzarotti. Eurecom Sophia Antipolis, France
[Software Development] Development Tools Davide Balzarotti Eurecom Sophia Antipolis, France Version Control Version (revision) control is the process of tracking and recording changes to files Most commonly
More informationGit version control with Eclipse (EGit) Tutorial
Git version control with Eclipse (EGit) Tutorial 출처 : Lars Vogel http://www.vogella.com/tutorials/eclipsegit/article.html Lars Vogel Version 3.6 Copyright 2009, 2010, 2011, 2012, 2013, 2014 Lars Vogel
More informationDEAD-SIMPLE VERSION CONTROL FOR YOUR TEAM GIT WITH MATTHEW REIDSMA GRAND VALLEY STATE UNIVERSITY
DEAD-SIMPLE VERSION CONTROL FOR YOUR TEAM WITH GIT MATTHEW REIDSMA GRAND VALLEY STATE UNIVERSITY WHO DOESN T USE VERSION CONTROL? VERSION CONTROL WHO? OH BOY. WHY YOU NEED VERSION CONTROL GIT GIT WHY GIT
More informationGit Introduction CS 400. February 11, 2018
Git Introduction CS 400 February 11, 2018 1 Introduction Git is one of the most popular version control system. It is a mature, actively maintained open source project originally developed in 2005 by Linus
More informationUSPAS Simulation of Beam and Plasma Systems Steven M. Lund, Jean-Luc Vay, Remi Lehe, Daniel Winklehner and David L. Bruhwiler Lecture: Software Version Control Instructor: David L. Bruhwiler Contributors:
More informationGit and GitHub. Dan Wysocki. February 12, Dan Wysocki Git and GitHub February 12, / 48
Git and GitHub Dan Wysocki February 12, 2015 Dan Wysocki Git and GitHub February 12, 2015 1 / 48 1 Version Control 2 Git 3 GitHub 4 Walkthrough Dan Wysocki Git and GitHub February 12, 2015 2 / 48 Version
More informationCS314 Software Engineering Configuration Management
CS314 Software Engineering Configuration Management Dave Matthews Configuration Management Management of an evolving system in a controlled way. Version control tracks component changes as they happen.
More information