473,406 Members | 2,894 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,406 software developers and data experts.

Does anyone have any suggestions for synchronizing multiple websites?

Does anyone have any suggestions for synchronizing multiple websites?

We have a dev server, a testing server, and a live server. Now, we
have 3 developers, and we are having trouble tracking which files on
which server are the latest. I know it should be obvious, but this is
a bit complicated, as many of you may have experienced.

Any suggestions for software and/or methods/techniques for file
management?

Thanks in advance.

J
Mar 24 '08 #1
3 1680
On 24 Mar, 15:52, javelin <google.1.jvm...@spamgourmet.comwrote:
Does anyone have any suggestions for synchronizing multiple websites?
rsync Good version control on your dev server too. I'd suggest
Subversion as the current best choice.

Also stop trying to "synchronise" content. Just worry about
propagating in one direction, and in being able to reliably make stuff
propagate. That way it doesn't matter if you over-write content
unnecessarily, it would just be the same content anyway.

If you use Subversion, "tagging" is important to keep track of stuff
too. Don't propagate straight from the dev server, make it a rule to
always tag a build first, then propagate from that tag.

Don't let habits develop like "just tweaking it a bit" on the live
server, then back-propagating. That way lies madness.

Don't edit files during propagation, even if you do this
automatically . If you _must_ have something different (.properties
file for DB connections etc.) then treat each one as separate files
for each server. Try and limit these too.
Mar 24 '08 #2
javelin wrote:
We have a dev server, a testing server, and a live server. Now, we
have 3 developers, and we are having trouble tracking which files on
which server are the latest. I know it should be obvious, but this is
a bit complicated, as many of you may have experienced.
I'm sure there are software packages to handle this scenario, but for me
it was easier to develop my own mechanism, which runs as a CGI
application on my webserver itself. I have just test and production, but
six developers.

One webpage allows each developer to download files from the test system
(acquiring a lock on the file in the process) and a separate page shows
you which files are newer on the test system.

Each time a file is uploaded to the test system an automatic backup of
the old file is taken. This also happens when a file is promoted from
the test to the production system.

It's simple, but sufficient for our needs. The only slightly unusual
aspect of our system is that any of the developers can remove a lock
held by someone else; this means that we don't need an administrator.

--
Steve Swift
http://www.swiftys.org.uk/swifty.html
http://www.ringers.org.uk
Mar 25 '08 #3
On 25 Mar, 06:33, Steve Swift <Steve.J.Sw...@gmail.comwrote:
Each time a file is uploaded to the test system an automatic backup of
the old file is taken.
Don't use backups, use a real VCS and deltas.
The only slightly unusual
aspect of our system is that any of the developers can remove a lock
held by someone else; this means that we don't need an administrator.
Locks are just plain dumb wrong anyway. Use a CMM approach (Checkout,
Modify Merge) rather than Lock-In, Lock-Out. If you have more than one
developer, it's a vast saving.
Mar 25 '08 #4

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

3
by: Keith Veleba | last post by:
Hello to all fellow c.l.p'ers! Long-time listener, first-time caller. Background: I'm working on a project where I have to do some serious multithreading. I've worked up a decorator in Python...
16
by: lostinspace | last post by:
Is it possible? TIA
2
by: Chuck | last post by:
I have not been able to find a good answer about the System.Collections.Queue.Synchronized() method and how it actually works or is to be used. If I create my Queue in the following manner: ...
2
by: Christopher D. Wiederspan | last post by:
We are getting ready to move an ASP.NET application off of a single development machine and onto a "webfarm". Basically our webfarm is a bunch of identical servers with the load-balancing provided...
4
by: Jai | last post by:
Hi, I have a problem related to Login System. I am developing 3 websites for some institution.Now they want that if anybody had sign up for there site1.com(say), than he or she should be able...
55
by: Zytan | last post by:
I see that static is more restricted in C# than in C++. It appears usable only on classes and methods, and data members, but cannot be created within a method itself. Surely this is possible in...
7
by: iwasinnihon | last post by:
I am trying to teach myself more about synchronizing threads. I took the following code from a book and have altered it to read one more file (the program counts in the words in multiple files). ...
15
by: ingejg | last post by:
I am starting to study internet synchronization, and my head is still spinning since internet is not my forte, however my boss is breathing down my neck at the moment. Our company has only one...
3
by: teddarr | last post by:
I have a Windows Server 2003. I am trying to run multiple websites on the server. I have 3 different websites I'd like to run. Currently the default website is working but no others. All...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.