How to programme in PHP with team of freelancers without to show them some of the code?

Today we’re using BitBucket and we show them all the our code and we want to decode some of our classes so they don’t see all of our work. This why we can add more developer very fast and easy. I didn’t find something easy that does that but maybe there is an option to output some of the code out of the main folder and call it from the main folder of the project (with include) (i didn’t find something like that but maybe)


You could use namespaces and have each developer have their own special folder/files they can build upon. That might do the trick?

If the other developers does not need to run your code, switch to Subversion and you can very easy access restrict an account to specific parts of the repository.

If not the only way is to create multiple repositories, and base the code on namespaces like @Pepster mention.

@TheRedDevil thanks for the information sharing.

Hi, thanks. They will need to run the code, and all repositories have some files they sharing, like security, logins and more. So if I separate them they can’t run the code. Anyway repositories can include files from other repositories and still run?

If you are specifically referring to configuration files that would contain things like database settings those don’t belong in the repository in the first place. Those files should be ignored and left to the developer to configure on their local machine. Possibly offer a sample file in the repository but not any actual config files that expose production credentials for servers, databases, payment gateways, vendor service APIs, etc. Those types of files do not belong in version control. Not to mention if you leave them in version control there is always the risk of someone accidentally committing local or test credentials to production. Another option would be storing all but the database settings in a file and moving any other critical authentication data to the database instead of flat files. Typically the only authentication information needed in flat files is the database connection settings. If you were to move things to the database provide a firewall in the form of the user privileges to access and change security critical data.

This topic was automatically closed 91 days after the last reply. New replies are no longer allowed.