Welcome Guest, Not a member yet? Register   Sign In
Best practices for project repositories (SVN, Git...)
#1

[eluser]Boris Strahija[/eluser]
I'm currently working on a pretty big project, and I have a couple of question on the way you think are the the best practices developing. The project is build completely on CI, so it fits these forums Wink

I currently have 2 folders setup, without any source control:
1. www.my-project.com
2. dev.my-project.com

I do all the developing on the dev subdomain, and the just copy the changes on to the live domain. This just doesn't feel right to so I was hoping to get some advice.
Maybe to setup some kind of repository on the dev subdomain, so I have a backup, versions etc. there, and this would also enable more people to work on the project.

This is all pretty straight forward, but what I would like to how connect it to the live domain? Another repository there?
What about all the hidden .svn / .git folders? Isn't that a security issue?

And also some configuration files are different on the dev server and live (database, facebook keys...).

Anyway, all the help is greatly appreciated.
Thanx Wink
#2

[eluser]Bramme[/eluser]
I have no experience with this whatsoever, but remembered this article though:
http://codeigniter.com/news/codeigniter_...subversio/

Maybe it'll be of some help.
#3

[eluser]Boris Strahija[/eluser]
Thanx, looks interesting Smile
Anyone else?
#4

[eluser]WanWizard[/eluser]
I work with a development-staging-production environment.

For development, my local webservers docroot is the (svn/git/hg) working copy. This is where I develop and test. The presence of .svn or other directories or files doesn't bother me there.

Whenever I commit, the repository has hook scripts that automatically syncs the repository to the staging server. This happens via an 'export', not a 'checkout', so no repository files are present there.
After (integration) testing on the staging server, and a positive test result, that state of the repository is tagged with a production version/release number.

This tagging is picked up by scripts as well, which starts a process of packaging the application into a release package, and deploying that package on the production server(s).
#5

[eluser]K-Fella[/eluser]
[quote author="WanWizard" date="1283180178"]I work with a development-staging-production environment.

For development, my local webservers docroot is the (svn/git/hg) working copy. This is where I develop and test. The presence of .svn or other directories or files doesn't bother me there.

Whenever I commit, the repository has hook scripts that automatically syncs the repository to the staging server. This happens via an 'export', not a 'checkout', so no repository files are present there.
After (integration) testing on the staging server, and a positive test result, that state of the repository is tagged with a production version/release number.

This tagging is picked up by scripts as well, which starts a process of packaging the application into a release package, and deploying that package on the production server(s).[/quote]I wish someone would write a comprehensive article on how to go about doing this. I've no idea on how to use Git (or any other version control) and an article like this would be SOOO useful.
#6

[eluser]WanWizard[/eluser]
Very difficult to write such an article, as there are as many requirements as there are people. And then there's you specific environment.
#7

[eluser]K-Fella[/eluser]
True, but even seeing how others do it would definitely help me get a better understanding.
#8

[eluser]phpserver[/eluser]
Capistrano always is a reliable method.http://qvister.se/2010/04/06/deploy-almo...apistrano/
#9

[eluser]n0xie[/eluser]
[quote author="K-Fella" date="1288310109"]True, but even seeing how others do it would definitely help me get a better understanding.[/quote]
I strongly urge you to read this article: http://nvie.com/posts/a-successful-git-branching-model/




Theme © iAndrew 2016 - Forum software by © MyBB