SlideShare a Scribd company logo
1 of 28
Download to read offline
Version Control for
Notes developers




                Martin Jinoch
#shameless-plug


  blog: http://jinoch.cz
  twitter: @mjinoch
  email: martin@jinoch.cz
Agenda
What is version control and why you should
use it, ...
Development work-flow with Git and git-flow
How to use Git in Designer
Other tools you can integrate into your
development process
“Classic” way ;-)
“Classic” way
no easy way to get back to previous state
unless we are keeping
→ backup versions of design elements
→ or backup copies of the whole template
we don't know what the last change was
→ we should maintain a separate change-
log
There must be a better way
Version control systems
→ client/server
CVS, SVN (Subversion), ...
→ distributed
Git, Bazaar, Mercurial, ...
Which one to use? Any. But please, DO use
them. (And don't use CVS)
http://gitvsmercurial.com
Basic operations
commit
  → save current state to VCS
diff
  → show the differences between commits (versions)
revert
  → undo (any) commit.
branch
  → make a new “copy” of the whole app
merge
  → apply changes from one branch to another
  branch
Branching model
http://nvie.com/posts/a-successful-git-branching-model/
git-flow
by Vincent Driesen (http://nvie.com)
covers not only development process
- like creating new features
but also release management and support
- promoting new features to production app, fixing bugs
in production app and in development version at once
could be used with other VCS
as well!
pretty simple, huh!?



let's see a demo
git-flow to Notes mapping
master = NTF file on production server
develop = NTF file on test server
feature/* = NTF file on local machine or local
server
team settings: rights to push to master and/or
develop should be restricted to role
(“gatekeeper”). In general individual
developers work on feature branches and
send pull requests to “gatekeeper”
Support for Version control in
          Designer
in 8.5.3 it is built-in to Designer
connects NTF with so called on-disk project
syncs changes to on-disk project and back
→ version control systems need real files to
act on not virtual file system
→ and some design elements have to be
converted to DXL
Configuring DDE for version
           control
Designer runs on top of Eclipse 3.4 (2008)
install VCS plugin from OpenNTF.org
→ EGit for Domino Designer (by Nathan T. Freeman)
   based on current EGit for Eclipse 3.6 and higher

→ Subversion UpdateSite for Domino Designer

Mercurial - http://cbes.javaforge.com/update and
choose 1.6.0 version of MercurialEclipse plugin and
1.4.3 version of Mercurial Binaries
Install EGit to DDE
Install EGit to DDE
Install EGit to DDE



               and point it to the
               downloaded zip
               file
Install EGit to DDE



               just check and
               press Next
Install EGit to DDE


               I guess even as non-lawyers
               we can accept this
Install EGit to DDE


               after pressing Finish
               keep accepting
               (there is one more
               dialog asking for
               permission to install
               plugin) and then
               restart Designer
Enable Source Control for NSF
Enable Source Control for NSF
Enable Source Control for NSF
Set up Git for the on-disk project
Set up Git for the on-disk project
Start using Git directly from DDE




  or use command line in Git Bash
  (we're developers, right?)
Redmine
●   project management tool, bug tracker, ...
●   connects to repository to link commits to
    issues (commit message “fixes #1”
    automatically closes issue with id 1) and
    for time tracking (@1h30m)
●   will probably be used for projects on
    OpenNTF.org as well as Git and Mercurial
    repositories
Questions?




●   more about Git
    http://think-like-a-git.net
    great book http://progit.org
Resources
●   Subversion - http://subversion.apache.org/
●   Git – http://git-scm.com/, Git for Windows -
    http://code.google.com/p/msysgit/ and follow link “Git for Windows”
●   Mercurial – http://mercurial.selenic.com/
●   Bazaar – http://bazaar.canonical.com/
●   EGit for Domino Designer –
    http://www.openntf.org/internal/home.nsf/project.xsp?
    action=openDocument&name=EGit%20for%20IBM%20Domino
    %20Designer
●   Subversion UpdateSite for Domino Designer –
    http://www.openntf.org/internal/home.nsf/project.xsp?
    action=openDocument&name=Subversion%20UpdateSite%20for
    %20Domino%20Designer
●   branching model -
    http://nvie.com/posts/a-successful-git-branching-model/
●   git-flow – https://github.com/nvie/gitflow
●   Redmine – http://www.redmine.org
Thank you!

More Related Content

What's hot

Training: Day Two - Eclipse, Git, Maven
Training: Day Two - Eclipse, Git, MavenTraining: Day Two - Eclipse, Git, Maven
Training: Day Two - Eclipse, Git, MavenArtur Ventura
 
Using Git and BitBucket
Using Git and BitBucketUsing Git and BitBucket
Using Git and BitBucketMedhat Dawoud
 
Version control system and Git
Version control system and GitVersion control system and Git
Version control system and Gitramubonkuri
 
Git the fast version control system
Git the fast version control systemGit the fast version control system
Git the fast version control systemJeroen Rosenberg
 
Version control and GIT Primer
Version control and GIT PrimerVersion control and GIT Primer
Version control and GIT Primersaadulde
 
Git extension-training
Git extension-trainingGit extension-training
Git extension-trainingEric Guo
 
Introduction to git administration
Introduction to git administrationIntroduction to git administration
Introduction to git administrationShawn Doyle
 
Version Control System
Version Control SystemVersion Control System
Version Control Systemguptaanil
 
Introduction to Version Control
Introduction to Version ControlIntroduction to Version Control
Introduction to Version ControlJeremy Coates
 
Using GIT for Everyone
Using GIT for EveryoneUsing GIT for Everyone
Using GIT for EveryoneGLC Networks
 
Hackaton for health 2015 - Sharing the Code we Make
Hackaton for health 2015 - Sharing the Code we MakeHackaton for health 2015 - Sharing the Code we Make
Hackaton for health 2015 - Sharing the Code we Makeesben1962
 
git-and-bitbucket
git-and-bitbucketgit-and-bitbucket
git-and-bitbucketazwildcat
 
Version control system
Version control systemVersion control system
Version control systemAndrew Liu
 
Beginner's Guide to Version Control with Git
Beginner's Guide to Version Control with GitBeginner's Guide to Version Control with Git
Beginner's Guide to Version Control with GitRobert Lee-Cann
 
Gitt and Git-flow
Gitt and Git-flowGitt and Git-flow
Gitt and Git-flowMd. Masud
 

What's hot (20)

Version controll.pptx
Version controll.pptxVersion controll.pptx
Version controll.pptx
 
Training: Day Two - Eclipse, Git, Maven
Training: Day Two - Eclipse, Git, MavenTraining: Day Two - Eclipse, Git, Maven
Training: Day Two - Eclipse, Git, Maven
 
Using Git and BitBucket
Using Git and BitBucketUsing Git and BitBucket
Using Git and BitBucket
 
Mini git tutorial
Mini git tutorialMini git tutorial
Mini git tutorial
 
Version control system and Git
Version control system and GitVersion control system and Git
Version control system and Git
 
Git the fast version control system
Git the fast version control systemGit the fast version control system
Git the fast version control system
 
Version control and GIT Primer
Version control and GIT PrimerVersion control and GIT Primer
Version control and GIT Primer
 
Lets git to it
Lets git to itLets git to it
Lets git to it
 
Git extension-training
Git extension-trainingGit extension-training
Git extension-training
 
Introduction to git administration
Introduction to git administrationIntroduction to git administration
Introduction to git administration
 
Version Control System
Version Control SystemVersion Control System
Version Control System
 
Introduction to Version Control
Introduction to Version ControlIntroduction to Version Control
Introduction to Version Control
 
Using GIT for Everyone
Using GIT for EveryoneUsing GIT for Everyone
Using GIT for Everyone
 
Hackaton for health 2015 - Sharing the Code we Make
Hackaton for health 2015 - Sharing the Code we MakeHackaton for health 2015 - Sharing the Code we Make
Hackaton for health 2015 - Sharing the Code we Make
 
git-and-bitbucket
git-and-bitbucketgit-and-bitbucket
git-and-bitbucket
 
Version control system
Version control systemVersion control system
Version control system
 
Hg for bioinformatics, second part
Hg for bioinformatics, second partHg for bioinformatics, second part
Hg for bioinformatics, second part
 
Intro to Git & GitHub
Intro to Git & GitHubIntro to Git & GitHub
Intro to Git & GitHub
 
Beginner's Guide to Version Control with Git
Beginner's Guide to Version Control with GitBeginner's Guide to Version Control with Git
Beginner's Guide to Version Control with Git
 
Gitt and Git-flow
Gitt and Git-flowGitt and Git-flow
Gitt and Git-flow
 

Similar to Version Control for Notes developers

Introduction to git and Github
Introduction to git and GithubIntroduction to git and Github
Introduction to git and GithubWycliff1
 
Git essential training & sharing self
Git essential training & sharing selfGit essential training & sharing self
Git essential training & sharing selfChen-Tien Tsai
 
git github PPT_GDSCIIITK.pptx
git github PPT_GDSCIIITK.pptxgit github PPT_GDSCIIITK.pptx
git github PPT_GDSCIIITK.pptxAbelPhilipJoseph
 
Git_tutorial.pdf
Git_tutorial.pdfGit_tutorial.pdf
Git_tutorial.pdfAliaaTarek5
 
Git usage (Basics and workflow)
Git usage (Basics and workflow)Git usage (Basics and workflow)
Git usage (Basics and workflow)Yeasin Abedin
 
Beginner Workshop for Student Developers - Tratech-presentation.pdf
Beginner Workshop for Student Developers - Tratech-presentation.pdfBeginner Workshop for Student Developers - Tratech-presentation.pdf
Beginner Workshop for Student Developers - Tratech-presentation.pdfGDSCKNUST
 
Introducing Git and git flow
Introducing Git and git flow Introducing Git and git flow
Introducing Git and git flow Sebin Benjamin
 
Git Tutorial A Comprehensive Guide for Beginners.pdf
Git Tutorial A Comprehensive Guide for Beginners.pdfGit Tutorial A Comprehensive Guide for Beginners.pdf
Git Tutorial A Comprehensive Guide for Beginners.pdfuzair
 
3DC Intro to Git Workshop
3DC Intro to Git Workshop3DC Intro to Git Workshop
3DC Intro to Git WorkshopBeckhamWee
 
Introduction to GitHub, Open Source and Tech Article
Introduction to GitHub, Open Source and Tech ArticleIntroduction to GitHub, Open Source and Tech Article
Introduction to GitHub, Open Source and Tech ArticlePRIYATHAMDARISI
 
You can git
You can gitYou can git
You can gitYu GUAN
 

Similar to Version Control for Notes developers (20)

Introduction to git and Github
Introduction to git and GithubIntroduction to git and Github
Introduction to git and Github
 
Git Basics
Git BasicsGit Basics
Git Basics
 
Git essential training & sharing self
Git essential training & sharing selfGit essential training & sharing self
Git essential training & sharing self
 
Git Training
Git TrainingGit Training
Git Training
 
git github PPT_GDSCIIITK.pptx
git github PPT_GDSCIIITK.pptxgit github PPT_GDSCIIITK.pptx
git github PPT_GDSCIIITK.pptx
 
Mini-training: Let’s Git It!
Mini-training: Let’s Git It!Mini-training: Let’s Git It!
Mini-training: Let’s Git It!
 
Git_tutorial.pdf
Git_tutorial.pdfGit_tutorial.pdf
Git_tutorial.pdf
 
Git & GitLab
Git & GitLabGit & GitLab
Git & GitLab
 
Git session 1
Git session 1Git session 1
Git session 1
 
GIT By Sivakrishna
GIT By SivakrishnaGIT By Sivakrishna
GIT By Sivakrishna
 
Git usage (Basics and workflow)
Git usage (Basics and workflow)Git usage (Basics and workflow)
Git usage (Basics and workflow)
 
GIT_Overview.
GIT_Overview.GIT_Overview.
GIT_Overview.
 
Git Mastery
Git MasteryGit Mastery
Git Mastery
 
Beginner Workshop for Student Developers - Tratech-presentation.pdf
Beginner Workshop for Student Developers - Tratech-presentation.pdfBeginner Workshop for Student Developers - Tratech-presentation.pdf
Beginner Workshop for Student Developers - Tratech-presentation.pdf
 
Introducing Git and git flow
Introducing Git and git flow Introducing Git and git flow
Introducing Git and git flow
 
Git Tutorial A Comprehensive Guide for Beginners.pdf
Git Tutorial A Comprehensive Guide for Beginners.pdfGit Tutorial A Comprehensive Guide for Beginners.pdf
Git Tutorial A Comprehensive Guide for Beginners.pdf
 
1-Intro to VC & GIT PDF.pptx
1-Intro to VC & GIT PDF.pptx1-Intro to VC & GIT PDF.pptx
1-Intro to VC & GIT PDF.pptx
 
3DC Intro to Git Workshop
3DC Intro to Git Workshop3DC Intro to Git Workshop
3DC Intro to Git Workshop
 
Introduction to GitHub, Open Source and Tech Article
Introduction to GitHub, Open Source and Tech ArticleIntroduction to GitHub, Open Source and Tech Article
Introduction to GitHub, Open Source and Tech Article
 
You can git
You can gitYou can git
You can git
 

Recently uploaded

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
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 

Recently uploaded (20)

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
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 

Version Control for Notes developers

  • 1. Version Control for Notes developers Martin Jinoch
  • 2. #shameless-plug blog: http://jinoch.cz twitter: @mjinoch email: martin@jinoch.cz
  • 3. Agenda What is version control and why you should use it, ... Development work-flow with Git and git-flow How to use Git in Designer Other tools you can integrate into your development process
  • 5. “Classic” way no easy way to get back to previous state unless we are keeping → backup versions of design elements → or backup copies of the whole template we don't know what the last change was → we should maintain a separate change- log
  • 6. There must be a better way Version control systems → client/server CVS, SVN (Subversion), ... → distributed Git, Bazaar, Mercurial, ... Which one to use? Any. But please, DO use them. (And don't use CVS) http://gitvsmercurial.com
  • 7. Basic operations commit → save current state to VCS diff → show the differences between commits (versions) revert → undo (any) commit. branch → make a new “copy” of the whole app merge → apply changes from one branch to another branch
  • 8. Branching model http://nvie.com/posts/a-successful-git-branching-model/ git-flow by Vincent Driesen (http://nvie.com) covers not only development process - like creating new features but also release management and support - promoting new features to production app, fixing bugs in production app and in development version at once could be used with other VCS as well!
  • 10. git-flow to Notes mapping master = NTF file on production server develop = NTF file on test server feature/* = NTF file on local machine or local server team settings: rights to push to master and/or develop should be restricted to role (“gatekeeper”). In general individual developers work on feature branches and send pull requests to “gatekeeper”
  • 11. Support for Version control in Designer in 8.5.3 it is built-in to Designer connects NTF with so called on-disk project syncs changes to on-disk project and back → version control systems need real files to act on not virtual file system → and some design elements have to be converted to DXL
  • 12. Configuring DDE for version control Designer runs on top of Eclipse 3.4 (2008) install VCS plugin from OpenNTF.org → EGit for Domino Designer (by Nathan T. Freeman) based on current EGit for Eclipse 3.6 and higher → Subversion UpdateSite for Domino Designer Mercurial - http://cbes.javaforge.com/update and choose 1.6.0 version of MercurialEclipse plugin and 1.4.3 version of Mercurial Binaries
  • 15. Install EGit to DDE and point it to the downloaded zip file
  • 16. Install EGit to DDE just check and press Next
  • 17. Install EGit to DDE I guess even as non-lawyers we can accept this
  • 18. Install EGit to DDE after pressing Finish keep accepting (there is one more dialog asking for permission to install plugin) and then restart Designer
  • 22. Set up Git for the on-disk project
  • 23. Set up Git for the on-disk project
  • 24. Start using Git directly from DDE or use command line in Git Bash (we're developers, right?)
  • 25. Redmine ● project management tool, bug tracker, ... ● connects to repository to link commits to issues (commit message “fixes #1” automatically closes issue with id 1) and for time tracking (@1h30m) ● will probably be used for projects on OpenNTF.org as well as Git and Mercurial repositories
  • 26. Questions? ● more about Git http://think-like-a-git.net great book http://progit.org
  • 27. Resources ● Subversion - http://subversion.apache.org/ ● Git – http://git-scm.com/, Git for Windows - http://code.google.com/p/msysgit/ and follow link “Git for Windows” ● Mercurial – http://mercurial.selenic.com/ ● Bazaar – http://bazaar.canonical.com/ ● EGit for Domino Designer – http://www.openntf.org/internal/home.nsf/project.xsp? action=openDocument&name=EGit%20for%20IBM%20Domino %20Designer ● Subversion UpdateSite for Domino Designer – http://www.openntf.org/internal/home.nsf/project.xsp? action=openDocument&name=Subversion%20UpdateSite%20for %20Domino%20Designer ● branching model - http://nvie.com/posts/a-successful-git-branching-model/ ● git-flow – https://github.com/nvie/gitflow ● Redmine – http://www.redmine.org