SlideShare una empresa de Scribd logo
1 de 14
Descargar para leer sin conexión
Source Code Management

          Widoyo
    <widoyo@gmail.com>
Agenda

 Software Characteristic
 Software Changes
 Traditional Method
 Version Control
 Distributed Version Control
 Centralized Version Control
 Branching
 Common Term in SCM
 Daily use of git
Software Characteristic

  Software running well on a certain condition
  Software are easy to break
  Software are easy to modify
  Software are an abstract things
  Bugs may be found at later time
Software Changes

 New Features
 Found Bugs
 Environment changes
 Request to change
Traditional Method

  Save into New name or Save the old one into archive name
  Making new directory to hold the old one
  Problems:
     No standard way to log changes
     Difficult to identify which the fresh (newest) one
     More complicated when working on Team


                          coba-asli.php
                          /aplikasi-v1/
                          /aplikasi-v2/
                          mycode-060908.rb
                          mycode-020908.rb
Version Control

  To log changes
  To prevent overwriting each other
  To tag a set of software code, release code
  As a code repository
Centralized Version Control

  Code repository are reside on a central place
  Ideal for Team that working on the same project
  Product examples:
     Concurrent Version System (CVS)
     Subversion (SVN)
     Source Safe?
Distributed Version Control

  Repository are placed any where
  Ideal for individual developer or small project
  Product examples (most of them are centralized too):
     GIT
     Bazaar
     Mercurical
Branching

a line of development that exists independently of another line,
yet still shares a common history
Common Term in SCM
 Repository --Storage of current and historical code
 Check-in / Commit -- commit changes, write log
 Check-out -- getting the source
 Branch -- making different line of development
 Conflict, Resolve --changes are made on the same source
 Baseline, Trunk, Master -- Main line of development
 Tag -- labeling snapshot of source
 Log --notes given by developer on changes
 Head -- the most recent commit
 Revision, Version --state at point in time
 Import -- copying local directory tree into repository
 Export --similar to checkout without metadata ofversion
 control
Daily Use of GIT

  Initiate repository
  import project (file(s) or Directory)
  checkout
  code - test iteration
  Commit - writing logs here
  Tag - labeling
  Branch
  Merge
  Log
  Diff
Starting Using git

  Install, ONLY available on Linux:(
  Write your code
  Initiate Repository
  Add your code into repo
  code-compile-test
  Commit the changes
  Tag
  and ... JUST Use it!
< 10 minutes
                       git show
my hello Project
Further Reading

http://www.kernel.org/pub/software/scm/git/docs/


                          Thank you

Más contenido relacionado

La actualidad más candente

Version Control with SVN
Version Control with SVNVersion Control with SVN
Version Control with SVNPHPBelgium
 
Git the fast version control system
Git the fast version control systemGit the fast version control system
Git the fast version control systemJeroen Rosenberg
 
Introduction to Subversion
Introduction to SubversionIntroduction to Subversion
Introduction to SubversionAtul Jha
 
SVN Best Practices
SVN Best PracticesSVN Best Practices
SVN Best Practicesabackstrom
 
Version Control with Subversion
Version Control with SubversionVersion Control with Subversion
Version Control with SubversionGuy K. Kloss
 
SVN Usage & Best Practices
SVN Usage & Best PracticesSVN Usage & Best Practices
SVN Usage & Best PracticesAshraf Fouad
 
Version Control and Continuous Integration
Version Control and Continuous IntegrationVersion Control and Continuous Integration
Version Control and Continuous IntegrationGeff Henderson Chang
 
Getting Started With Subversion
Getting Started With SubversionGetting Started With Subversion
Getting Started With SubversionJordan Hatch
 
Version control, issue tracking and communication
Version control, issue tracking and communicationVersion control, issue tracking and communication
Version control, issue tracking and communicationLars Yde
 
Version control and GIT Primer
Version control and GIT PrimerVersion control and GIT Primer
Version control and GIT Primersaadulde
 
Subversion workshop
Subversion workshopSubversion workshop
Subversion workshopTrafeX
 
Nguyễn Vũ Hưng: Subversion best practices
Nguyễn Vũ Hưng: Subversion best practicesNguyễn Vũ Hưng: Subversion best practices
Nguyễn Vũ Hưng: Subversion best practicesVu Hung Nguyen
 

La actualidad más candente (20)

Version Control with SVN
Version Control with SVNVersion Control with SVN
Version Control with SVN
 
Version control
Version controlVersion control
Version control
 
SVN Best Practices
SVN Best PracticesSVN Best Practices
SVN Best Practices
 
SVN Basics
SVN BasicsSVN Basics
SVN Basics
 
Git the fast version control system
Git the fast version control systemGit the fast version control system
Git the fast version control system
 
Introduction to Subversion
Introduction to SubversionIntroduction to Subversion
Introduction to Subversion
 
SVN Best Practices
SVN Best PracticesSVN Best Practices
SVN Best Practices
 
Svn Basic Tutorial
Svn Basic TutorialSvn Basic Tutorial
Svn Basic Tutorial
 
Source Code management System
Source Code management SystemSource Code management System
Source Code management System
 
Version Control with Subversion
Version Control with SubversionVersion Control with Subversion
Version Control with Subversion
 
SVN Usage & Best Practices
SVN Usage & Best PracticesSVN Usage & Best Practices
SVN Usage & Best Practices
 
Version Control and Continuous Integration
Version Control and Continuous IntegrationVersion Control and Continuous Integration
Version Control and Continuous Integration
 
Getting Started With Subversion
Getting Started With SubversionGetting Started With Subversion
Getting Started With Subversion
 
Version control, issue tracking and communication
Version control, issue tracking and communicationVersion control, issue tracking and communication
Version control, issue tracking and communication
 
Version control and GIT Primer
Version control and GIT PrimerVersion control and GIT Primer
Version control and GIT Primer
 
Git an introductino
Git an introductinoGit an introductino
Git an introductino
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
 
Subversion workshop
Subversion workshopSubversion workshop
Subversion workshop
 
Nguyễn Vũ Hưng: Subversion best practices
Nguyễn Vũ Hưng: Subversion best practicesNguyễn Vũ Hưng: Subversion best practices
Nguyễn Vũ Hưng: Subversion best practices
 
Subversion User Guide
Subversion User GuideSubversion User Guide
Subversion User Guide
 

Destacado

Python - Telegram
Python - TelegramPython - Telegram
Python - TelegramWidoyo PH
 
Computer vision, machine, and deep learning
Computer vision, machine, and deep learningComputer vision, machine, and deep learning
Computer vision, machine, and deep learningIgi Ardiyanto
 
Processor, Compiler and Python Programming Language
Processor, Compiler and Python Programming LanguageProcessor, Compiler and Python Programming Language
Processor, Compiler and Python Programming Languagearumdapta98
 
Kewirausahaan
KewirausahaanKewirausahaan
KewirausahaanWidoyo PH
 
Unit Testing
Unit TestingUnit Testing
Unit TestingDotitude
 
Masih m bajak software
Masih m bajak software  Masih m bajak software
Masih m bajak software Widoyo PH
 
Easy Web Project Development & Management with Django & Mercurial
Easy Web Project Development & Management with Django & MercurialEasy Web Project Development & Management with Django & Mercurial
Easy Web Project Development & Management with Django & MercurialWidoyo PH
 
Buku kecil coffee script
Buku kecil coffee scriptBuku kecil coffee script
Buku kecil coffee scriptWidoyo PH
 
Software Project Management
Software Project ManagementSoftware Project Management
Software Project ManagementWidoyo PH
 
Langkah-langkah Membuat Software Aplikasi
Langkah-langkah Membuat Software AplikasiLangkah-langkah Membuat Software Aplikasi
Langkah-langkah Membuat Software AplikasiWidoyo PH
 
Facebook Marketing Automation for Real Estate
Facebook Marketing Automation for Real EstateFacebook Marketing Automation for Real Estate
Facebook Marketing Automation for Real EstateInman News
 
How Computer Vision is Reshaping Real Estate Search - Andrew Flachner
How Computer Vision is Reshaping Real Estate Search - Andrew FlachnerHow Computer Vision is Reshaping Real Estate Search - Andrew Flachner
How Computer Vision is Reshaping Real Estate Search - Andrew FlachnerInman News
 
An Introduction to Computer Vision
An Introduction to Computer VisionAn Introduction to Computer Vision
An Introduction to Computer Visionguestd1b1b5
 
COM2304: Introduction to Computer Vision & Image Processing
COM2304: Introduction to Computer Vision & Image Processing COM2304: Introduction to Computer Vision & Image Processing
COM2304: Introduction to Computer Vision & Image Processing Hemantha Kulathilake
 
"Computer Vision and Artificial Intelligence: Market Trends and Implications,...
"Computer Vision and Artificial Intelligence: Market Trends and Implications,..."Computer Vision and Artificial Intelligence: Market Trends and Implications,...
"Computer Vision and Artificial Intelligence: Market Trends and Implications,...Edge AI and Vision Alliance
 

Destacado (20)

Python - Telegram
Python - TelegramPython - Telegram
Python - Telegram
 
Computer vision, machine, and deep learning
Computer vision, machine, and deep learningComputer vision, machine, and deep learning
Computer vision, machine, and deep learning
 
Processor, Compiler and Python Programming Language
Processor, Compiler and Python Programming LanguageProcessor, Compiler and Python Programming Language
Processor, Compiler and Python Programming Language
 
Kewirausahaan
KewirausahaanKewirausahaan
Kewirausahaan
 
Unit Testing
Unit TestingUnit Testing
Unit Testing
 
Masih m bajak software
Masih m bajak software  Masih m bajak software
Masih m bajak software
 
Easy Web Project Development & Management with Django & Mercurial
Easy Web Project Development & Management with Django & MercurialEasy Web Project Development & Management with Django & Mercurial
Easy Web Project Development & Management with Django & Mercurial
 
Buku kecil coffee script
Buku kecil coffee scriptBuku kecil coffee script
Buku kecil coffee script
 
Software Project Management
Software Project ManagementSoftware Project Management
Software Project Management
 
Langkah-langkah Membuat Software Aplikasi
Langkah-langkah Membuat Software AplikasiLangkah-langkah Membuat Software Aplikasi
Langkah-langkah Membuat Software Aplikasi
 
Facebook Marketing Automation for Real Estate
Facebook Marketing Automation for Real EstateFacebook Marketing Automation for Real Estate
Facebook Marketing Automation for Real Estate
 
How Computer Vision is Reshaping Real Estate Search - Andrew Flachner
How Computer Vision is Reshaping Real Estate Search - Andrew FlachnerHow Computer Vision is Reshaping Real Estate Search - Andrew Flachner
How Computer Vision is Reshaping Real Estate Search - Andrew Flachner
 
Computer Vision
Computer VisionComputer Vision
Computer Vision
 
Computer vision
Computer visionComputer vision
Computer vision
 
An Introduction to Computer Vision
An Introduction to Computer VisionAn Introduction to Computer Vision
An Introduction to Computer Vision
 
COM2304: Introduction to Computer Vision & Image Processing
COM2304: Introduction to Computer Vision & Image Processing COM2304: Introduction to Computer Vision & Image Processing
COM2304: Introduction to Computer Vision & Image Processing
 
Computer Vision Introduction
Computer Vision IntroductionComputer Vision Introduction
Computer Vision Introduction
 
"Computer Vision and Artificial Intelligence: Market Trends and Implications,...
"Computer Vision and Artificial Intelligence: Market Trends and Implications,..."Computer Vision and Artificial Intelligence: Market Trends and Implications,...
"Computer Vision and Artificial Intelligence: Market Trends and Implications,...
 
Computer Vision Crash Course
Computer Vision Crash CourseComputer Vision Crash Course
Computer Vision Crash Course
 
Computer Vision
Computer VisionComputer Vision
Computer Vision
 

Similar a Source code management

Git Workflows
Git WorkflowsGit Workflows
Git WorkflowsNoam Kfir
 
Intro To Version Control
Intro To Version ControlIntro To Version Control
Intro To Version Controlceardach
 
Version control system and Git
Version control system and GitVersion control system and Git
Version control system and Gitramubonkuri
 
How to use CVS applied to SOLab
How to use CVS applied to SOLabHow to use CVS applied to SOLab
How to use CVS applied to SOLabPablo Arriazu
 
Git and GitFlow branching model
Git and GitFlow branching modelGit and GitFlow branching model
Git and GitFlow branching modelPavlo Hodysh
 
Source control - what you need to know
Source control - what you need to knowSource control - what you need to know
Source control - what you need to knowdaveymni
 
CS_Note_Introduction to Git Workflow.pdf
CS_Note_Introduction to Git Workflow.pdfCS_Note_Introduction to Git Workflow.pdf
CS_Note_Introduction to Git Workflow.pdfalbusfons939393
 
Embracing Distributed Version Control
Embracing Distributed Version ControlEmbracing Distributed Version Control
Embracing Distributed Version ControlNowell Strite
 
Introduction to Version Control
Introduction to Version ControlIntroduction to Version Control
Introduction to Version ControlJeremy Coates
 
Version control with git
Version control with gitVersion control with git
Version control with gitPurav Gandhi
 
SQL Server DevOps Jumpstart
SQL Server DevOps JumpstartSQL Server DevOps Jumpstart
SQL Server DevOps JumpstartOri Donner
 
Version control with GIT
Version control with GITVersion control with GIT
Version control with GITZeeshan Khan
 
Software Build processes and Git
Software Build processes and GitSoftware Build processes and Git
Software Build processes and GitAlec Clews
 
Git Educated About Git - 20 Essential Commands
Git Educated About Git - 20 Essential CommandsGit Educated About Git - 20 Essential Commands
Git Educated About Git - 20 Essential CommandsJeremy Lindblom
 

Similar a Source code management (20)

Git Workflows
Git WorkflowsGit Workflows
Git Workflows
 
Subversion
SubversionSubversion
Subversion
 
Intro To Version Control
Intro To Version ControlIntro To Version Control
Intro To Version Control
 
Version control system and Git
Version control system and GitVersion control system and Git
Version control system and Git
 
How to use CVS applied to SOLab
How to use CVS applied to SOLabHow to use CVS applied to SOLab
How to use CVS applied to SOLab
 
Git and GitFlow branching model
Git and GitFlow branching modelGit and GitFlow branching model
Git and GitFlow branching model
 
Source control - what you need to know
Source control - what you need to knowSource control - what you need to know
Source control - what you need to know
 
CS_Note_Introduction to Git Workflow.pdf
CS_Note_Introduction to Git Workflow.pdfCS_Note_Introduction to Git Workflow.pdf
CS_Note_Introduction to Git Workflow.pdf
 
What the Git? - WordCamp Atlanta
What the Git? - WordCamp AtlantaWhat the Git? - WordCamp Atlanta
What the Git? - WordCamp Atlanta
 
Embracing Distributed Version Control
Embracing Distributed Version ControlEmbracing Distributed Version Control
Embracing Distributed Version Control
 
Introduction to Version Control
Introduction to Version ControlIntroduction to Version Control
Introduction to Version Control
 
Version control with git
Version control with gitVersion control with git
Version control with git
 
SQL Server DevOps Jumpstart
SQL Server DevOps JumpstartSQL Server DevOps Jumpstart
SQL Server DevOps Jumpstart
 
SVN Information
SVN Information  SVN Information
SVN Information
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
 
01 - Git vs SVN
01 - Git vs SVN01 - Git vs SVN
01 - Git vs SVN
 
Version control with GIT
Version control with GITVersion control with GIT
Version control with GIT
 
ClearCase Basics
ClearCase BasicsClearCase Basics
ClearCase Basics
 
Software Build processes and Git
Software Build processes and GitSoftware Build processes and Git
Software Build processes and Git
 
Git Educated About Git - 20 Essential Commands
Git Educated About Git - 20 Essential CommandsGit Educated About Git - 20 Essential Commands
Git Educated About Git - 20 Essential Commands
 

Último

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdfChristopherTHyatt
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 

Último (20)

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 

Source code management

  • 1. Source Code Management Widoyo <widoyo@gmail.com>
  • 2. Agenda Software Characteristic Software Changes Traditional Method Version Control Distributed Version Control Centralized Version Control Branching Common Term in SCM Daily use of git
  • 3. Software Characteristic Software running well on a certain condition Software are easy to break Software are easy to modify Software are an abstract things Bugs may be found at later time
  • 4. Software Changes New Features Found Bugs Environment changes Request to change
  • 5. Traditional Method Save into New name or Save the old one into archive name Making new directory to hold the old one Problems: No standard way to log changes Difficult to identify which the fresh (newest) one More complicated when working on Team coba-asli.php /aplikasi-v1/ /aplikasi-v2/ mycode-060908.rb mycode-020908.rb
  • 6. Version Control To log changes To prevent overwriting each other To tag a set of software code, release code As a code repository
  • 7. Centralized Version Control Code repository are reside on a central place Ideal for Team that working on the same project Product examples: Concurrent Version System (CVS) Subversion (SVN) Source Safe?
  • 8. Distributed Version Control Repository are placed any where Ideal for individual developer or small project Product examples (most of them are centralized too): GIT Bazaar Mercurical
  • 9. Branching a line of development that exists independently of another line, yet still shares a common history
  • 10. Common Term in SCM Repository --Storage of current and historical code Check-in / Commit -- commit changes, write log Check-out -- getting the source Branch -- making different line of development Conflict, Resolve --changes are made on the same source Baseline, Trunk, Master -- Main line of development Tag -- labeling snapshot of source Log --notes given by developer on changes Head -- the most recent commit Revision, Version --state at point in time Import -- copying local directory tree into repository Export --similar to checkout without metadata ofversion control
  • 11. Daily Use of GIT Initiate repository import project (file(s) or Directory) checkout code - test iteration Commit - writing logs here Tag - labeling Branch Merge Log Diff
  • 12. Starting Using git Install, ONLY available on Linux:( Write your code Initiate Repository Add your code into repo code-compile-test Commit the changes Tag and ... JUST Use it!
  • 13. < 10 minutes git show my hello Project