At Appcelerator we use Git as our version control system. In addition, many of our open source projects, including the core SDKs, are hosted on Github. For this reason, if you plan on contributing to Titanium, it's critical that you understand at least the basics of how Git and Github work.
The following sections give some references and tips for getting started with Git & Github. With this knowledge you'll better understand how Appcelerator manages out many open source projects. Also, you'll have the opportunity to start integrating this powerful version control system into your own workflow.
Learning Git and Github
Getting Started with Git
Git can be a little daunting if you've never used it before, but most people soon learn to love it. The following resources will help you to get started:
- Git Official Website
- Michael Marner's Git Tutorial (video)
- Linus Torvalds' Git Tech Talk (video)
- The Pro Git Book
git helpcommand and the Git online manual
- Github Git Reference (manual)
- the Freenode IRC server's #git channel
- and many others
Before you start, you will need to work through these points:
- configure SSH, required for pushing branches to Github. See "Generating SSH Keys" for Mac OS X and Windows.
Some Quick Git Tips
The following can make Git a little easier to use:
- use gitk to give a visual representation of your repository
- by default, if a file's permissions change, Git will perceive it just the same as if its contents were changed, Thus, to ignore permissions changes, run:
Committing Code with Git in 7 Easy Stages
The following diagram describes the full development cycle used to contribute code or documentation to an Appcelerator repository, using Git and Github.
Download a hi-res version here.