Book Image

Magento PHP Developer????s Guide, 2nd Edition

By : Allan MacGregor
Book Image

Magento PHP Developer????s Guide, 2nd Edition

By: Allan MacGregor

Overview of this book

Table of Contents (16 chapters)
Magento PHP Developer's Guide Second Edition
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Working with a version control system


The Magento code base is very extensive and is comprised of over 7,000 files and close to a million and a half lines of code. For this reason, working with a version control system is not only good practice, but also a necessity.

Version control systems are used to keep track of changes across multiple files and by multiple developers. Using a version control system, we gain access to very powerful tools.

Of the several version control systems available (git, svn, mercurial), Git deserves special attention due to its simplicity and flexibility. By releasing the upcoming version 2 of Magento on GitHub, a Git hosting service, the Magento core development team has recognized the importance that Git has among the Magento community.

For more information on Magento2, refer to https://github.com/magento/magento2.

GitHub now specifically includes a .gitignore file for Magento, which will ignore all the files in the Magento core and only keep track of our own code.

That said, there are a several version control concepts that we need to keep in mind when working with our Magento projects:

Branching: This allows us to work on new features without affecting our trunk (stable release).

Merging: This is used to move code from one place to another. Usually, this is done from a development brand in our trunk once the code is ready to be moved into production.

Tagging: This is used to create snapshots of a release.