Application version management » History » Version 3
  Herve Caumont, 2013-10-03 12:57 
  
| 1 | 1 | Herve Caumont | h1. Application version management  | 
|---|---|---|---|
| 2 | |||
| 3 | Application version management benefits from different tools available from a Developer Cloud Sandbox.  | 
||
| 4 | |||
| 5 | h2. Using Git  | 
||
| 6 | |||
| 7 | Git is a distributed version control and source code management system with an emphasis on speed.  | 
||
| 8 | Every Git working directory is a full-fledged local repository with complete history and full version tracking capabilities, and thus not dependent on the network or a central server.  | 
||
| 9 | |||
| 10 | We will describe here how to setup a Git working copy of an application folder, locally to a Sandbox, and how to push it to a GitHub code repository, for application sharing and collaborative development environment on the Web.  | 
||
| 11 | |||
| 12 | GitHub (http://github.com) is a web hosting service for software development projects, that uses the Git version control system. The service provides social networking tools such as feeds, watchers, and a social network graph to visualize how developers exploit their versions of a repository.  | 
||
| 13 | |||
| 14 | !local-remote.png!  | 
||
| 15 | |||
| 16 | h3. Step by step with Git  | 
||
| 17 | |||
| 18 | 2 | Herve Caumont | To initialise your local Git repository, with a synchronization to a web backup repository, one option is to start from the repository initialized for a Sandbox project on GitHub.  | 
| 19 | |||
| 20 | Start to save all your files in your /application folder, then type:  | 
||
| 21 | 1 | Herve Caumont | <pre>  | 
| 22 | 2 | Herve Caumont | [user@sb ~]$ git clone git@github.com:Terradue/geowow-1 /application  | 
| 23 | </pre>  | 
||
| 24 | |||
| 25 | Then copy your Application files in your /application folder, and add them in the sandbox's Git version control system:  | 
||
| 26 | <pre>  | 
||
| 27 | 1 | Herve Caumont | [user@sb ~]$ cd ~/application/  | 
| 28 | [user@sb ~]$ git add application.xml yourSubFolder1/  | 
||
| 29 | </pre>  | 
||
| 30 | |||
| 31 | As a result, this is adding (referencing) file contents to the Git index.  | 
||
| 32 | |||
| 33 | To commit your Application in the sandbox's Git version control system:  | 
||
| 34 | <pre>  | 
||
| 35 | [user@sb ~]$ git commit  | 
||
| 36 | </pre>  | 
||
| 37 | |||
| 38 | As a result, this is recording changes to the Git repository.  | 
||
| 39 | |||
| 40 | To push your application on the web, on a dedicated GitHub repo (here a GitHub private repo provided by Terradue to Sandbox users, https://github.com/Terradue/geowow-1):  | 
||
| 41 | <pre>  | 
||
| 42 | 2 | Herve Caumont | [user@sb ~]$  | 
| 43 | 1 | Herve Caumont | </pre>  | 
| 44 | |||
| 45 | You'll have to give your certificate passphrase  | 
||
| 46 | |||
| 47 | As a result, this is cloning your Sandbox's Git repository to the web-based GitHub repository "geowow-1", under an "application" folder.  | 
||
| 48 | |||
| 49 | h2. Using Hadoop runs folders  | 
||
| 50 | |||
| 51 | Upcoming!  |