• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar

TeraTech

The ColdFusion Experts: Develop | Secure | Optimize

  • Services
    • Consulting
    • Crash
    • Development
    • Maintenance
    • Modernization
    • Security
  • About Us
  • Testimonials
  • Free Assessment
  • Get in touch!

  • Services
    • Consulting
    • Crash
    • Development
    • Maintenance
    • Modernization
    • Security
  • About Us
  • Testimonials
  • Free Assessment
  • Get in touch!

052 Git ColdFusion Source Control with Nolan Erck

December 4, 2017 By Michaela Light 2 Comments

Nolan Erck talks about “051 Git ColdFusion Source Control (Getting Started and Best Practices)” in this episode of ColdFusion Alive Podcast, with host Michaela Light.


Contents

  • Show notes
  • Mentioned in this episode
  • Listen to the Audio
  • Bio
  • Links
  • Interview transcript:

Show notes

  • What is “source control” and when / why all CFers need it?
    • Repository = library for your code with versions baked in
    • For Windows, Mac, Linux dev
    • For any kind of code you write: CF, C++, Java, iPhone, Ruby, COBOL, PHP, QBASIC, InstallShield
    • Docker config info or CommandBox scripts
    • Database creation scripts
    • Even documentation or graphics fields
      • Though best with text files
    • Your desk or brain? (just kidding)
  • The problems of home made source control
    • Copying files to Bak or zip
    • Future Confusion and Deadwood code
    • Security issue
    • Team changes
    • Revert to an earlier version across multiple files
    • Why not just have everyone work directly on the production server? (bad idea)
      • Even a shared dev server is a bad idea
  • What is Git?
    • Server
      • GitHub, Bitbucket, Unfuddle, BeanStalk, host your own
    • Client
      • OSX: Tower, GitBox, SourceTree, SmartGit
      • Windows: TortoiseGit, SmartGit
      • Can mix/match among team members.
      • Free to $50
  • Why Git and Costs
    • Free options for server and client
    • Command line or GUI
    • Modern industry standard
  • Alternatives to Git
    • Subversion, CVS, Team Foundation Server, Visual SourceSafe, PerfForce, Mercurial.
  • How to use Git from a GUI
    • Allow 1-2 h to get started if you have never used Git
  • The difference between Git and GitHub
    • Git is the protocol
    • GitHub is one brand of Git server
  • Common Git commands
  • Add
    • Just because you make a file, that doesn't mean Git
    • watches it for changes.
  • Commit
    • The “committed” version of the file is stored locally.
    • Only file delta are stored by Git (not a copy of every version)
  • Push
    • Do this whenever the file(s) is ready to be
    • shared with your team, or ready for inclusion in
    • the latest build
  • Branching
    • Do this: Always when you are changing the site
    • Git Flow Technique
    • Versioning
      • Branches or tagging
    • Different customer customizations
    • Hot fixes
  • Reverting
  • Merging
    • Automatic merges if only different line have been changed
    • Merge conflicts if two people/branches have changed the same code lines
    • “Commit early, commit often”
  • Git Best practices
    • Make a branch called “Master” for what the Production server should look like.
      • Don't actually write code in this branch.
      • Write in other branches, then merge them into Master.
      • Anytime you “pull from Master”, you get an exact copy of what's on the Live server.
    • Make a branch called “QA”. As bugs are fixed, merge them into QA.
      • When everything in QA has been tested and debugged, merge it into “master”.
    • Don't be afraid to make “temporary branches” to try out new ideas. No harm in making and deleting new branches.
  • More Git Resources
  • Why are you proud to use CF?
  • WWIT for you to make CF more alive this year?
  • What are you looking forward to at CFCAMP?

Git Source Control: for the Rest of Us

What about those designers/JS/CSS folks that WEREN'T using Subversion, and don't CARE about how under the hood Git uses a different type of pointer file storage thing, blah blah blah? There's a whole new wave of developers/designers that could stand to have an intro to Git that matches their workflow more concisely.

Target Audience: People that want to learn a) what source control is, and when/why I should use it, b) people that don't drop down to a command-line interface for such tasks, c) everyone that's been snickered at when asking how to use a GUI tool to start learning Git, instead of those strange command-line instructions.

Assumed knowledge: A familiarity with asset files and the idea that “I need to make backups of these and share them with my team in an organized way”. For this presentation, I'm making no assumptions about any prior knowledge or use of a source control system.

Objective of the topic: So far all the “Intro to Git” presentations I've seen have covered the same points, and all assumed the user does source control management via the command line. For a lot of people, that's simply not the case. For example, front-end developers that came from a Photoshop background and are now doing more HTML/CSS work. Let's get these people up to speed on how to use source control in way that makes sense to them!

Mentioned in this episode

  • Git 
    • Git was created by Linus Torvalds in 2005 for development of the Linux kernel
    • Git is a distributed version control systems, and unlike most client–server systems, every Git directory on every computer is a full-fledged repository with complete history and full version tracking abilities, independent of network access or a central server.
  • Git servers
    • GitHub
    • Bitbucket
    • Unfuddle
    • BeanStalk
  • Git clients
    • Tower
    • GitBox
    • SourceTree
    • SmartGit
    • TortoiseGit
  • Git Flow Technique
  • Alternatives to Git
    • Subversion
    • CVS
    • Team Foundation Server
    • Visual SourceSafe
    • PerfForce
    • Mercurial
  • Git Resources
    • Pro Git Book (free) 
    • Tim Cunningham's Git presos and blog entries
      • And on YouTube
    • CF Hour Podcast, episode 118
    • Peter Bell's Git courses
  • Podcast CF Continuous Integration Plumbing with Bitbucket Pipelines with Guust Nieuwenhuis
  • Podcast Gitlab server Deep Dive with Continuous Integration with George Murphy
  • Sublime text editor
  • Stack Overflow
  • The name “git” was given by Linus Torvalds when he wrote the very first version. He described the tool as “the stupid content tracker” and the name as (depending on your way):
    • random three-letter combination that is pronounceable, and not actually used by any common UNIX command. The fact that it is a mispronunciation of “get” may or may not be relevant.
    • stupid. contemptible and despicable. simple. Take your pick from the dictionary of slang.
    • “global information tracker”: you're in a good mood, and it actually works for you. Angels sing, and a light suddenly fills the room.
    • “g*dd*mn idiotic truckload of sh*t”: when it breaks

Listen to the Audio

Bio

Nolan Erck

Nolan Erck is the Chief consultant at South of Shasta. Nolan has been developing software for 19 years. Starting in the video game industry working on titles for Maxis and LucasArts, then advancing to web development in 1999, his list of credits includes Grim Fandango, StarWars Rogue Squadron, SimPark, SimSafari as well as high-traffic websites for clients. Nolan manages the SacInteractive User Group, teaches classes on aspects of software development, and regularly gives presentations at conferences and user groups across the country.

Links

  • Git Source Control for the Rest of Us Presentation
  • Slide Deck

Interview transcript:

Michael:          Welcome back to the show, I'm here with Nolan Erick and we're going to be looking at Git, and why every ColdFusion developer should be using it, and we'll look at how you can get started and some best practices. So we'll look at what source control is? Because Git is source control and why you shouldn't be using homemade source control. We know the people who make back files and zipped their files and all kinds of other things like that. Am going to explaining why that is a bad idea for security and other issues. Then we're going to have a look at what Git is? And what will different Server client options and some of the commands and some best practices you can use with Git source control for cold fusion? So welcome Nolan.

Nolan:             Hi Mike. Thank you for having me.

Michael:          And for those of you who don't know Nolan he is the chief ColdFusion guru of [unintelligible, 00:53] productions and he is also the world's biggest music collector in the ColdFusion community, I saw a picture of his album collection, it was like wow! To hear with albums must be thousands of CD's and even [unintelligible, 01:10]. Pretty amazing just in case you were a music collector as well. So why don't we just start off with these three people in the room, or listening to this who don't know what source control is? What is it and why should everyone be using it?

Nolan: So source control is… it's sort of like a librarian for the source code in your app. When you check a book out of the library, the library marks down who has the book?

Read more

 

And to continue learning how to make your ColdFusion apps more modern and alive, I encourage you to download our free ColdFusion Alive Best Practices Checklist.

Because… perhaps you are responsible for a mission-critical or revenue-generating CF application that you don’t trust 100%, where implementing new features is a painful ad-hoc process with slow turnaround even for simple requests.

What if you have no contingency plan for a sudden developer departure or a server outage? Perhaps every time a new freelancer works on your site, something breaks. Or your application availability, security, and reliability are poor.

And if you are depending on ColdFusion for your job, then you can’t afford to let your CF development methods die on the vine.

You’re making a high-stakes bet that everything is going to be OK using the same old app creation ways in that one language — forever.

All it would take is for your fellow CF developer to quit or for your CIO to decide to leave the (falsely) perceived sinking ship of CFML and you could lose everything—your project, your hard-won CF skills, and possibly even your job.

Luckily, there are a number of simple, logical steps you can take now to protect yourself from these obvious risks.

No Brainer ColdFusion Best Practices to Ensure You Thrive No Matter What Happens Next

ColdFusion Alive Best Practices Checklist

ColdFusion Alive Best Practices Checklist

Modern ColdFusion development best practices that reduce stress, inefficiency, project lifecycle costs while simultaneously increasing project velocity and innovation.

√ Easily create a consistent server architecture across development, testing, and production

√ A modern test environment to prevent bugs from spreading

√ Automated continuous integration tools that work well with CF

√ A portable development environment baked into your codebase… for free!

 

Learn about these and many more strategies in our free ColdFusion Alive Best Practices Checklist.

  • Facebook
  • Twitter
  • LinkedIn

Related Posts

  • 141 Into The Box 2025 ColdFusion conference (all the details) with Daniel Garcia
  • 107 ColdFusion 2021 Revealing Details on How it was Created with Rakshith Naresh
  • 140 BoxLang modern JVM language that runs CFML code (new CFML engine and much more) with Luis Majano and Brad Wood
  • 139 All About Adobe ColdFusion 2023 (Part 2: PDF, CCS, SSO, perf, security) with Mark Takata
  • 138 All About Adobe ColdFusion 2023 (Part 1: containers, GCP, GraphQL, JWT) with Mark Takata
  • 137 ColdFusion Oracle Cloud Migration with MySQL (from VPS) with Scott Stroz
  • 136 Into The Box 2024 (all the details and speakers) with Jorge Reyes
  • 135 Lucee Migration (8 CFML code moving tips) with Mike Chytráček

Filed Under: CF Alive Podcast

← Previous Post 051 Improve your CFML Code Quality with Kai Koenig
Next Post → 052 Git ColdFusion Source Control (Getting Started and Best Practices) with Nolan Erck – Transcript

Primary Sidebar

Subscribe on iTunes

Popular podcast episodes

  • Revealing ColdFusion 2021 – Rakshith Naresh
  • CF and Angular – Nolan Erck
  • Migrating legacy CFML – Nolan Erck
  • Adobe API manager – Brian Sappey
  • Improve your CFML code – Kai Koenig

CF Alive Best Practices Checklist

Modern ColdFusion development best practices that reduce stress, inefficiency, project lifecycle costs while simultaneously increasing project velocity and innovation.

Get your checklist

Top articles

  • CF Hosting (independent guide)
  • What is Adobe ColdFusion
  • Is Lucee CFML now better than ACF?
  • Is CF dead?
  • Learn CF (comprehensive list of resources)

Recent Posts

  • 141 Into The Box 2025 ColdFusion conference (all the details) with Daniel Garcia – Transcript
  • 141 Into The Box 2025 ColdFusion conference (all the details) with Daniel Garcia
  • 107 ColdFusion 2021 Revealing Details on How it was Created with Rakshith Naresh
  • The Legacy Continues: ColdFusion Summit East Conference Edition
  • 140 BoxLang modern JVM language that runs CFML code (new CFML engine and much more) with Luis Majano and Brad Wood – Transcript

Categories

  • Adobe ColdFusion 11 and older
  • Adobe ColdFusion 2018
  • Adobe ColdFusion 2020 Beta
  • Adobe ColdFusion 2021
  • Adobe ColdFusion 2023
  • Adobe ColdFusion 2024
  • Adobe ColdFusion 2025
  • Adobe ColdFusion Developer week
  • Adobe ColdFusion Project Stratus
  • Adobe ColdFusion Summit
  • AWS
  • BoxLang
  • CF Alive
  • CF Alive Podcast
  • CF Camp
  • CF Tags
  • CF Vs. Other Languages
  • CFEclipse
  • CFML
  • CFML Open- Source
  • CFUnited
  • ColdBox
  • ColdFusion and other news
  • ColdFusion Community
  • ColdFusion Conference
  • ColdFusion Consulting
  • ColdFusion Developer
  • ColdFusion Development
  • ColdFusion Hosting
  • ColdFusion Maintenance
  • ColdFusion Performance Tuning
  • ColdFusion Projects
  • ColdFusion Roadmap
  • ColdFusion Security
  • ColdFusion Training
  • ColdFusion's AI
  • CommandBox
  • Docker
  • Fixinator
  • Frameworks
  • Fusebox
  • FusionReactor
  • IntoTheBox Conference
  • Java
  • JavaScript
  • JVM
  • Learn CFML
  • Learn ColdFusion
  • Legacy Code
  • Load Testing
  • Lucee
  • Mindmapping
  • MockBox
  • Modernize ColdFusion
  • Ortus Developer Week
  • Ortus Roadshow
  • Server Crash
  • Server Software
  • Server Tuning
  • SQL
  • Survey
  • Survey results
  • TestBox
  • Transcript
  • Webinar
  • Women in Tech

TeraTech

  • About Us
  • Contact

Services

  • Free assessment
  • Consulting
  • Crash
  • Development
  • Maintenance
  • Modernization
  • Security
  • Case Studies

Resources

  • CF Alive Book
  • CF Alive Podcast
    • Podcast Guest Schedule
  • TeraTech Blog
  • CF Alive resources
  • CF e-course
  • CF best practice checklist

Community

  • CF Alive
  • CF Inner Circle
  • CF Facebook Group

TeraTech Inc
451 Hungerford Drive Suite 119
Rockville, MD 20850

Tel : +1 (301) 424 3903
Fax: +1 (301) 762 8185

Follow us on Facebook Follow us on LinkedIn Follow us on Twitter Follow us on Pinterest Follow us on YouTube



Copyright © 1998–2025 TeraTech Inc. All rights Reserved. Privacy Policy.