Wednesday, April 1, 2015

Version Control for our Final Project

If any of you have started to write code for your project, you may have already ran into the same problem that we did on how we are going to share the code and make sure that everyone has the most updated version with the least amount of trouble.

We tried to use DropBox, but this didn't really work for us so I looked into GitHub and we have decided to use it for our final project. The advantage to using GitHub is that a lot of studios use similar systems for version control and it will give us exposure to tools that industry pros use.

This will first require everyone in your team to set up a GitHub account, which is free. Since we are all students, you can also go to https://education.github.com/pack (Links to an external site.) and apply for a student pack that will give you access to a higher tier of GitHub for free that normally cost money. The advantage to this student account, is that you are able to make up to 5 private repositories, otherwise any repositories that you make on GitHub will be public and anyone can view your code. But the student account is not required for this to work.

Once everyone has an account, only ONE person from your team will have to go set up the repository on GitHub. There is a simple tutorial on the website on how to set up the repository. You will then be able to add people as "contributors" to the project.

Here is steps that I wrote on how to get GitHub and Pycharm to work on your computer. There is some initial set-up required, but it won't be too bad:
1. Download and install the latest version of Pycharm 4.0.6: https://www.jetbrains.com/pycharm/download/ (Links to an external site.) Don't open Pycharm until you have completed step 2.

2. Download and install GitHub for Windows: https://windows.github.com/ (Links to an external site.) Once this has been installed, it will ask you for you login information for your account. Once you have entered that information, you can exit the program.

3. When you open Pycharm for the first time, it will ask you what you want to do on the "Welcome Window". Fist go to: "Configure" -> "Settings" -> "Version Control" -> "GitHub"

4. Make sure the "Host" is "github.com (Links to an external site.)" and then type in your username and password for your GitHub account. Click on the "Test" button to make sure your login information is correct, and then click "Apply" at the bottom.

5. Under the same section of "Version Control", go to "Git".

6. On the section where it asks for the "Path to Git executable" you will have to change the path to the exe file.

7. The exe file can be found under: C:\Users\<username>\AppData\Local\GitHub\PortableGit_<numbersandletters>\bin\git.exe Make sure that you update the parts that are in red text to the correct information on your system.

8. Click on the "Test" button to make sure that the exe file runs. If its successful, then you can click "Ok" at the bottom and go back to the original welcome screen.

9. Once that has been set up, now you are ready to download the code from GitHub. Click on "Check out from Version Control" and select "GitHub" from the little drop-down list.

From here it really simple to clone the repository from GitHub. It will ask you for a "Master Password", this is a new password you are making for your system that will be used anytime that you need to get or push changes to the code. It doesn't have to be the same as your GitHub account, but it can.

You will also have to choose a place to clone the repository. I would suggest that you save it to your Documents and you don't have to make a new folder, but you can if you want. Once that is done, you will be able clone the repository and it will download all the files on the repository (if any).

You will be able to add new Python files to your project in Pycharm, and you will be able to push and pull changes to the code using the "VCS" menu in Pycharm at the top of the window. Or you can use "Ctrl + T" to pull and "Ctrl + K" to push/commit changes to the code.

If you guys have any questions, just let me know. Thanks for reading!

No comments:

Post a Comment