Software Version Control With Mercurial and Tortoise Hg
|
|
|
- Jonas Lane
- 10 years ago
- Views:
Transcription
1 Software Version Control With Mercurial and Tortoise Hg Mark Ciechanowski, P.E., CSDP IEEE Embedded Systems Workshop Oakland University October 19, 2013
2 Abstract Mercurial and GIT are modern, open source, distributed version control systems that have replaced the older tools such as RCS, CVS, and Subversion. This talk will cover a short review of last-year's presentation that introduced Mercurial and good software practices using configuration management from swebok.org, and then go on to cover more advanced scenarios of using CM such as: 1) Merging of source code from more than one developer, and 2) Branching for a release and handling bug-fixes in prior releases. This presentation will also cover how to recover from common mistakes.
3 Agenda Advertisement Advertisement Importance of Source Control to your project History of Source Control Tools Overview (Brief Review from Last Year) Advanced Topics branching and merging release branches Take-a-ways
4 Advertisement Certified Software Development Professional Good software practices Many references
5 Advertisement Benefits Financial Advantage, myieee, IEEE.tv, IEEE alias, IEEE-USA jobs, IEEE Societies, IEEE Spectrum Magazine, Member-get-a-Member, ebook Classics, Career Navigator, Career Webinars, IEEE Job Site, IEEE Women-in-Engineering, Online Communities, Continuing Education, CLE training, Discounts and travel, volunteering and leadership training, Humanitarian Programs,... Member # ($25 off)
6 Bio MSSE PE CSDP IEEE Volunteer since 2003 IEEE Past Section Chair 2013 IEEE Region 4 Secretary IEEE Senior Member
7 Revision Control Is... Manage changes to: source files, make files, tests release notes, doc, etc. Do not: copy and paste files is NOT revision control!! Source Control Is NOT Backup!!! Purpose: change history small changesets, check-in often
8 Importance of Source Control Good Source Control is your professional responsibility Not: mgr, project, program, Good practice, just like make, unit testing, bugtracker, lint, etc. It is our job as professionals to get better at what we do. -- Dr. Chris Wagner
9 History of Rev Control Systems SCCS (UNIX) RCS Lock-type concurrency model CVS, Visual SourceSafe (VSS) Subversion (SVN) ClearCase (IBM/Rational) All have client-server repository models GIT and Mercurial Merge-type concurrency model Distributed repository model
10 Mercurial Modern, distributed revision control system Distributed - no central repo Runs on Linux, Windows, Mac OS X Check-in changesets to entire repository not individual files (although you can choose which files to save) You check-in whole repository changeset All subdirectories
11 Mercurial Network ssh built-in, clone across net Tortoise Hg is the Windows interface Open source (GNU GPL v2)
12 init $ hg init
13 Hg Workbench
14
15
16
17
18
19
20
21
22
23
24 Linux Command-Line hg init hg add hg stat hg commit hg log hg clone hg branch hg update
25 hg clone
26 hg clone
27
28
29
30
31
32
33
34
35
36 Tutorial
37 References HgInit SWEBOK IEEE Computer Society Configuration Management Further Information on Technology and Careers IEEE Computer Society IEEE IEEE-USA
Distributed Version Control with Mercurial and git
OpenStax-CNX module: m37404 1 Distributed Version Control with Mercurial and git Hannes Hirzel This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License 3.0 Abstract
An Introduction to Mercurial Version Control Software
An Introduction to Mercurial Version Control Software CS595, IIT [Doc Updated by H. Zhang] Oct, 2010 Satish Balay [email protected] Outline Why use version control? Simple example of revisioning Mercurial
Theme 1 Software Processes. Software Configuration Management
Theme 1 Software Processes Software Configuration Management 1 Roadmap Software Configuration Management Software configuration management goals SCM Activities Configuration Management Plans Configuration
Software Configuration Management. Slides derived from Dr. Sara Stoecklin s notes and various web sources.
Software Configuration Management Slides derived from Dr. Sara Stoecklin s notes and various web sources. What is SCM? SCM goals Manage the changes to documents, programs, files, etc. Track history Identify
Git Basics. Christopher Simpkins [email protected]. Chris Simpkins (Georgia Tech) CS 2340 Objects and Design CS 1331 1 / 22
Git Basics Christopher Simpkins [email protected] Chris Simpkins (Georgia Tech) CS 2340 Objects and Design CS 1331 1 / 22 Version Control Systems Records changes to files over time Allows you to
Continuous Integration. CSC 440: Software Engineering Slide #1
Continuous Integration CSC 440: Software Engineering Slide #1 Topics 1. Continuous integration 2. Configuration management 3. Types of version control 1. None 2. Lock-Modify-Unlock 3. Copy-Modify-Merge
Version Control Tools
Version Control Tools Source Code Control Venkat N Gudivada Marshall University 13 July 2010 Venkat N Gudivada Version Control Tools 1/73 Outline 1 References and Resources 2 3 4 Venkat N Gudivada Version
Source Control Systems
Source Control Systems SVN, Git, GitHub SoftUni Team Technical Trainers Software University http://softuni.bg Table of Contents 1. Software Configuration Management (SCM) 2. Version Control Systems: Philosophy
Advanced Computing Tools for Applied Research Chapter 4. Version control
Advanced Computing Tools for Applied Research Jaime Boal Martín-Larrauri Rafael Palacios Hielscher Academic year 2014/2015 1 Version control fundamentals 2 What you probably do now Manually save copies
CSE 374 Programming Concepts & Tools. Laura Campbell (Thanks to Hal Perkins) Winter 2014 Lecture 16 Version control and svn
CSE 374 Programming Concepts & Tools Laura Campbell (Thanks to Hal Perkins) Winter 2014 Lecture 16 Version control and svn Where we are Learning tools and concepts relevant to multi-file, multi-person,
Version Control with Git
Version Control with Git Ben Wasserman ([email protected]) 15-441 Computer Networks Recitation 3 1/28 What is version control? Revisit previous code versions Backup projects Work with others Find where
Introduction to Version Control
Research Institute for Symbolic Computation Johannes Kepler University Linz, Austria Winter semester 2014 Outline General Remarks about Version Control 1 General Remarks about Version Control 2 Outline
Version Control with Subversion
Version Control with Subversion Introduction Wouldn t you like to have a time machine? Software developers already have one! it is called version control Version control (aka Revision Control System or
Version Control. Version Control
Version Control CS440 Introduction to Software Engineering 2013, 2015 John Bell Based on slides prepared by Jason Leigh for CS 340 University of Illinois at Chicago Version Control Incredibly important
Revision control systems (RCS) and
Revision control systems (RCS) and Subversion Problem area Software projects with multiple developers need to coordinate and synchronize the source code Approaches to version control Work on same computer
Version Control with Git. Linux Users Group UT Arlington. Rohit Rawat [email protected]
Version Control with Git Linux Users Group UT Arlington Rohit Rawat [email protected] Need for Version Control Better than manually storing backups of older versions Easier to keep everyone updated
Version Control Systems
Version Control Systems ESA 2015/2016 Adam Belloum [email protected] Material Prepared by Eelco Schatborn Today IntroducGon to Version Control Systems Centralized Version Control Systems RCS CVS SVN
An Introduction to Mercurial Version Control Software
An Introduction to Mercurial Version Control Software LANS Weekly Seminar October 17, 2006 Satish Balay [email protected] Outline Why use version control? Simple example of revisioning Mercurial introduction
Introduction to Software Configuration Management. CprE 556 Electrical and Computer Engineering Department Iowa State University
Introduction to Software Configuration Management CprE 556 Electrical and Computer Engineering Department Iowa State University 1 Example Initially, implementation is in Modula-2 on a Mac. A11 B11 A12
Distributed Version Control
Distributed Version Control Faisal Tameesh April 3 rd, 2015 Executive Summary Version control is a cornerstone of modern software development. As opposed to the centralized, client-server architecture
CS 2112 Lab: Version Control
29 September 1 October, 2014 Version Control What is Version Control? You re emailing your project back and forth with your partner. An hour before the deadline, you and your partner both find different
Version Control! Scenarios, Working with Git!
Version Control! Scenarios, Working with Git!! Scenario 1! You finished the assignment at home! VC 2 Scenario 1b! You finished the assignment at home! You get to York to submit and realize you did not
Introduction to Software Engineering (2+1 SWS) Winter Term 2009 / 2010 Dr. Michael Eichberg Vertretungsprofessur Software Engineering Department of
Introduction to Software Engineering (2+1 SWS) Winter Term 2009 / 2010 Dr. Michael Eichberg Vertretungsprofessur Software Engineering Department of Computer Science Technische Universität Darmstadt Dr.
Beginner s guide to continuous integration. Gilles QUERRET Riverside Software
Beginner s guide to continuous integration Gilles QUERRET Riverside Software About the speaker Working with Progress and Java since 10 years Started Riverside Software 5 years ago Based in Lyon, France
Data management on HPC platforms
Data management on HPC platforms Transferring data and handling code with Git scitas.epfl.ch September 10, 2015 http://bit.ly/1jkghz4 What kind of data Categorizing data to define a strategy Based on size?
Comparison of Version Control Systems for Software Maintenance
Comparison of Version Control Systems for Software Maintenance by Kevin N. Haw (http://www.kevinhaw.com) May 16, 2006 This work is licensed under the Creative Commons Attribution-Noncommercial-No Derivative
Version Control with Mercurial and SSH
Version Control with Mercurial and SSH Lasse Kliemann [email protected] Vorkurs Informatik 2010 Wishlist While working on a project, it is nice to... be able to switch back to older versions of
CPSC 491. Today: Source code control. Source Code (Version) Control. Exercise: g., no git, subversion, cvs, etc.)
Today: Source code control CPSC 491 Source Code (Version) Control Exercise: 1. Pretend like you don t have a version control system (e. g., no git, subversion, cvs, etc.) 2. How would you manage your source
CISC 275: Introduction to Software Engineering. Lab 5: Introduction to Revision Control with. Charlie Greenbacker University of Delaware Fall 2011
CISC 275: Introduction to Software Engineering Lab 5: Introduction to Revision Control with Charlie Greenbacker University of Delaware Fall 2011 Overview Revision Control Systems in general Subversion
Version Control with Svn, Git and git-svn. Kate Hedstrom ARSC, UAF
1 Version Control with Svn, Git and git-svn Kate Hedstrom ARSC, UAF 2 Version Control Software System for managing source files For groups of people working on the same code When you need to get back last
TIME. Programming in the large. Lecture 22: Configuration Management. Agenda for today. About your Future. CM: The short version. CM: The long version
1 2 Last update: 17 June 2004 Programming in the large Bertrand Meyer Lecture 22: Configuration Management Bernd Schoeller [email protected] Agenda for today 3 About your Future 4 Motivation
Software Configuration Management and Continuous Integration
1 Chapter 1 Software Configuration Management and Continuous Integration Matthias Molitor, 1856389 Reaching and maintaining a high quality level is essential for each today s software project. To accomplish
CSCB07 Software Design Version Control
CSCB07 Software Design Version Control Anya Tafliovich Fall 2015 Problem I: Working Solo How do you keep track of changes to your program? Option 1: Don t bother Hope you get it right the first time Hope
Version control with Subversion
Version control with Subversion Davor Cubranic Grad Seminar October 6, 2011 With searching comes loss And the presence of absence: My Thesis not found. Version Control A tool for managing changes to a
Version Control with Git. Dylan Nugent
Version Control with Git Dylan Nugent Agenda What is Version Control? (and why use it?) What is Git? (And why Git?) How Git Works (in theory) Setting up Git (surviving the CLI) The basics of Git (Just
Version Control Tutorial using TortoiseSVN and. TortoiseGit
Version Control Tutorial using TortoiseSVN and TortoiseGit Christopher J. Roy, Associate Professor Virginia Tech, [email protected] This tutorial can be found at: www.aoe.vt.edu/people/webpages/cjroy/software-resources/tortoise-svn-git-tutorial.pdf
Software Configuration Management. http:\\www.francisxavier.ac.in
Software Configuration Management Outline Introduction what is SCM, who are involved, why it is imp? what are the steps? Basic Concepts of SCM Configuration Management Activities Configuration Management
Annoyances with our current source control Can it get more comfortable? Git Appendix. Git vs Subversion. Andrey Kotlarski 13.XII.
Git vs Subversion Andrey Kotlarski 13.XII.2011 Outline Annoyances with our current source control Can it get more comfortable? Git Appendix Rant Network traffic Hopefully we have good repository backup
SOFTWARE DEVELOPMENT BASICS SED
SOFTWARE DEVELOPMENT BASICS SED Centre de recherche Lille Nord Europe 16 DÉCEMBRE 2011 SUMMARY 1. Inria Forge 2. Build Process of Software 3. Software Testing 4. Continuous Integration 16 DECEMBRE 2011-2
Version Control with Git. Kate Hedstrom ARSC, UAF
1 Version Control with Git Kate Hedstrom ARSC, UAF Linus Torvalds 3 Version Control Software System for managing source files For groups of people working on the same code When you need to get back last
Miguel A. Figueroa Villanueva Xabriel J. Collazo Mojica. ICOM 5047 Capstone Miguel A. Figueroa Villanueva University of Puerto Rico Mayagüez Campus
Document and Information Management: A Software Developer s Perspective Xabriel J. Collazo Mojica Outline Introduction Why should I (you) care? Document management CMS Wiki Aigaion Code and Document Repositories
Using Git for Project Management with µvision
MDK Version 5 Tutorial AN279, Spring 2015, V 1.0 Abstract Teamwork is the basis of many modern microcontroller development projects. Often teams are distributed all over the world and over various time
Module 11 Setting up Customization Environment
Module 11 Setting up Customization Environment By Kitti Upariphutthiphong Technical Consultant, ecosoft [email protected] ADempiere ERP 1 2 Module Objectives Downloading ADempiere Source Code Setup Development
1. History 2. Structure 3. Git Comparison 4. File Storage 5. File Tracking 6. Staging 7. Queues (MQ) 8. Merge Tools 9. Interfaces
1 Hg 1. History 2. Structure 3. Git Comparison 4. File Storage 5. File Tracking 6. Staging 7. Queues (MQ) 8. Merge Tools 9. Interfaces 2 Mercurial / Git History Bitmover's BitKeeper Proprietary distributed
Introduction to the Git Version Control System
Introduction to the Sebastian Rockel [email protected] University of Hamburg Faculty of Mathematics, Informatics and Natural Sciences Department of Informatics Technical Aspects of Multimodal
Modulo II Software Configuration Management - SCM
Modulo II Software Configuration Management - SCM Professor Ismael H F Santos [email protected] April 05 Prof. Ismael H. F. Santos - [email protected] 1 Bibliografia Introduction to Apache
Software configuration management
Software Engineering Theory Software configuration management Lena Buffoni/ Kristian Sandahl Department of Computer and Information Science 2015-09-30 2 Maintenance Requirements System Design (Architecture,
Version Control with Git
Version Control with Git Claudius Coenen License: CC-BY-4.0 What We're Not Talking About Conceived by Linus Torvalds around 2005 Distributed Version Control vs. Central Version Control Why git is better
DAVE Usage with SVN. Presentation and Tutorial v 2.0. May, 2014
DAVE Usage with SVN Presentation and Tutorial v 2.0 May, 2014 Required DAVE Version Required DAVE version: v 3.1.6 or higher (recommend to use the most latest version, as of Feb 28, 2014, v 3.1.10) Required
Lab Exercise Part II: Git: A distributed version control system
Lunds tekniska högskola Datavetenskap, Nov 25, 2013 EDA260 Programvaruutveckling i grupp projekt Labb 2 (part II: Git): Labbhandledning Checked on Git versions: 1.8.1.2 Lab Exercise Part II: Git: A distributed
Software Configuration Management. Context. Learning Objectives
Software Configuration Management Wolfgang Emmerich Professor of Distributed Computing University College London http://sse.cs.ucl.ac.uk Context Requirements Inception Elaboration Construction Transition
Derived from Chris Cannam's original at, https://code.soundsoftware.ac.uk/projects/easyhg/wiki/sc2012bootcamppl an.
Version Control Key Points ========================== Mike Jackson, The Software Sustainability Institute. This work is licensed under the Creative Commons Attribution License. Copyright (c) Software Carpentry
Using GitHub for Rally Apps (Mac Version)
Using GitHub for Rally Apps (Mac Version) SOURCE DOCUMENT (must have a rallydev.com email address to access and edit) Introduction Rally has a working relationship with GitHub to enable customer collaboration
Source code management systems
Source code management systems SVN, Git, Mercurial, Bazaar,... for managing large projects with multiple people work locally or across a network store and retrieve all versions of all directories and files
<Insert Picture Here> Introducing Hudson. Winston Prakash. Click to edit Master subtitle style
Introducing Hudson Click to edit Master subtitle style Winston Prakash What is Hudson? Hudson is an open source continuous integration (CI) server. A CI server can do various tasks
Software Configuration Management and Change Management
School of Innovation, Design and Engineering Mälardalen University Västerås, Sweden - April, 2009 - Sha Liu Master Thesis in Computer Science Software Configuration Management and Change Management Supervisor:
Introduc)on to Version Control with Git. Pradeep Sivakumar, PhD Sr. Computa5onal Specialist Research Compu5ng, NUIT
Introduc)on to Version Control with Git Pradeep Sivakumar, PhD Sr. Computa5onal Specialist Research Compu5ng, NUIT Contents 1. What is Version Control? 2. Why use Version control? 3. What is Git? 4. Create
Mercurial. Why version control (Single users)
Mercurial Author: Hans Fangohr Date: 2008-05-21 Version: 033c85b22987 Id: talk.txt,v 033c85b22987 2008/05/21 08:42:42 fangohr Series: SESA2006 2008, last lecture Hint Adjust font-size
Professional. SlickEdif. John Hurst IC..T...L. i 1 8 О 7» \ WILEY \ Wiley Publishing, Inc.
Professional SlickEdif John Hurst IC..T...L i 1 8 О 7» \ WILEY \! 2 0 0 7 " > Wiley Publishing, Inc. Acknowledgments Introduction xiii xxv Part I: Getting Started with SiickEdit Chapter 1: Introducing
Version control with GIT
AGV, IIT Kharagpur September 13, 2012 Outline 1 Version control system What is version control Why version control 2 Introducing GIT What is GIT? 3 Using GIT Using GIT for AGV at IIT KGP Help and Tips
Why this lecture exists ITK Lecture 12: Open Source & Cross Platform Software Development
Why this lecture exists ITK Lecture 12: Open Source & Cross Platform Software Development Methods in Image Analysis CMU Robotics Institute 16-725 U. Pitt Bioengineering 2630 Spring Term, 2006 Successfully
Software Development and Collaboration: Version Control Systems and Other Approaches
Software Development and Collaboration: Version Control Systems and Other Approaches Jose Antonio Escobar García Technische Universität Berlin [email protected] May, 2011 Abstract In the current context
Git - Working with Remote Repositories
Git - Working with Remote Repositories Handout New Concepts Working with remote Git repositories including setting up remote repositories, cloning remote repositories, and keeping local repositories in-sync
Source Code Management/Version Control
Date: 3 rd March 2005 Source Code Management/Version Control The Problem: In a typical software development environment, many developers will be engaged in work on one code base. If everyone was to be
Version Uncontrolled! : How to Manage Your Version Control
Version Uncontrolled! : How to Manage Your Version Control Harold Dost III, Raastech ABSTRACT Are you constantly wondering what is in your production environment? Do you have any doubts about what code
Continuous Integration
Continuous Integration Collaborative development issues Checkout of a shared version of software ( mainline ) Creation of personal working copies of developers Software development: modification of personal
How To Manage A Computer System
Ivica Crnkovic Mälardalen University Department of Computer Engineering [email protected] Page 1, 3/5/2001 Software Configuration Management SCM - takes care about development components and products
Integrated version control with Fossil SCM
Integrated version control with Fossil SCM Tech Talk 2009-12-01 Arne Bachmann Folie 1 Overview Web address www.fossil-scm.org Author Dr. D.R. Hipp - Author of License GPL v2 Motto No information shall
Version Control with Subversion and Xcode
Version Control with Subversion and Xcode Author: Mark Szymczyk Last Update: June 21, 2006 This article shows you how to place your source code files under version control using Subversion and Xcode. By
Source Code Control & Bugtracking
h(p://home.hit.no/~hansha/?page=sonware_development O. Widder. (2013). geek&poke. Available: h(p://geek- and- poke.com Source Code Control & Bugtracking Hans- Pe(er Halvorsen, M.Sc. 1 O. Widder. (2013).
UNIVERSITY OF CALIFORNIA Department of Electrical Engineering and Computer Sciences Computer Science Division. P. N. Hilfinger
UNIVERSITY OF CALIFORNIA Department of Electrical Engineering and Computer Sciences Computer Science Division CS 61B Fall 2012 P. N. Hilfinger Version Control and Homework Submission 1 Introduction Your
The Importance of Source Code Control in Custom Systems Integration Projects
The Importance of Source Code Control in Custom Systems Integration Projects A White Paper By PICS SmartCard Inc. Kevin Hiebert, CA IT, CIO July 2006 Abstract: The risks of a catastrophic loss of critical
Continuous Integration
Continuous Integration Sébastien Besson Open Microscopy Environment Wellcome Trust Centre for Gene Regulation & Expression College of Life Sciences, University of Dundee Dundee, Scotland, UK 1 Plan 1.
Two Best Practices for Scientific Computing
Two Best Practices for Scientific Computing Version Control Systems & Automated Code Testing David Love Software Interest Group University of Arizona February 18, 2013 How This Talk Happened Applied alumnus,
Git Basics. Christian Hanser. Institute for Applied Information Processing and Communications Graz University of Technology. 6.
Git Basics Christian Hanser Institute for Applied Information Processing and Communications Graz University of Technology 6. March 2013 Christian Hanser 6. March 2013 Seite 1/39 Outline Learning Targets
S609. RDz and Source Control Management Systems
S609. RDz and Source Control Management Systems Michael Erichsen [email protected] www.xact.dk Agenda Source Control Management (SCM) What it does Some product examples Integrating RDz with SCM
Content. Development Tools 2(63)
Development Tools Content Project management and build, Maven Version control, Git Code coverage, JaCoCo Profiling, NetBeans Static Analyzer, NetBeans Continuous integration, Hudson Development Tools 2(63)
Software Development. Overview. www.intland.com
Agile, Waterfall & Hybrid Method Support SAFe Template Git, SVN, Mercurial Integration Release Management DevOps Baselining (Versioning) Integration to Requirements and QA & Testing Overview codebeamer
Software Configuration Management. Wingsze Seaman COMP250SA February 27, 2008
Software Configuration Management Wingsze Seaman COMP250SA February 27, 2008 Outline CM and SCM Definitions SCM History CMMI and SCM SCM Tools SCM/Dynamic Systems SCM/Software Architecture Resources 2
Introduction to Programming Tools. Anjana & Shankar September,2010
Introduction to Programming Tools Anjana & Shankar September,2010 Contents Essentials tooling concepts in S/W development Build system Version Control System Testing Tools Continuous Integration Issue
Methodologies. Adam Pasztory 12/19/07. Pasztory - 1
Revision Control Methodologies Adam Pasztory 12/19/07 Pasztory - 1 Revision control is one of the primary components of the change management process for system administrators.(1) Any project that has
What CCPForge does Introduction to SESC and CCPForge Workshop Gemma Poulter [email protected] http://www.softeng-support.ac.
What CCPForge does Introduction to SESC and CCPForge Workshop Gemma Poulter [email protected] http://www.softeng-support.ac.uk What is CCPForge? Software development environment Originally intended
Software Engineering Practices for Python
Software Engineering Practices for Python Coding Experiences Good development practices help with the following situations: You swear that the code worked perfectly 6 months ago, but today it doesn't,
Software Development Tools & Environments
Software Development Tools & Environments Software Development Tools & Environments A tool is a program or application that software developers use to create, debug, or maintain other programs and applications.
