Search code examples
androiddropboxshared

Suggest for working together with a shared project


i am working in an app for my self, nothing big,nothing for customer.i am working with 2 friends and we d like to know the best way to share the project in order to work in the meantime. We are using dropbox,but we are not sure is the best way because some times it gets errors. we putted all of the file system in dropbox. Then in local everyone imported the file from dropbox so we can have changes in real time. I mean i work in an activity while my friend is setting the layout ecc. The problem is that sometimes some files are missing or not sync properly.


Solution

  • Version control

    What you are looking for is version control. You might wonder why you need version control. Version control stores the code at a central place for all in your team to access it. This allows you to make sure that everyone in the group is using the latest version of the code.

    Version control also allows you to store changes to file. Let say you and your friend change the same file at the same time and then you both upload it to a server like dropbox that you have tag. What happens is that the last person how uploaded will overwrite the code of the first person so that persons code will be lost. Version control handles this by keeping track of the changes and if two people change the same file it will try to resolve this by merge both changes in the file. This can not always be done automatically so most version controls will ask the last party at this point how you want the changes to be merge, but no code is just lost.

    Version control creates a snapshot for every committed change so you can always go back to an earlier version if something goes wrong this is useful if some party merges a file incorrectly, or you want to try something you are not sure will work.

    What version controls are there?

    There are many different version controls to use.

    git

    svn

    Mercurial

    How to create a version control project.

    As you may have notice by now all of this software require a server of some sort. You can either host it on a server you own or you can use a free service. There are a few to choose from.

    github

    google code

    This are just a few example of the most popular, there are a lot more option out there if you look. Read up on them and choose the one that fits you the best.