![](/i/fill.gif) |
![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Much of the work I do involves working on web applications for a small
service based company. We also have another developer who does the same type
of work in another part of the country. We have finally learned to make sure
we have the most recent version of a file before beginning work on an
update.
I had been working on an update to add second language functionality to four
pages, finished my work and was testing when she sends me an email informing
me that she has just completed updating the very same four files that I had
been working on for the last four days. So, the version of the file I had
became out of date before I could make my own update. She is always very
good about informing me of such things although after the fact. So, now I
have to get the new version of these four files and completely redo the work
I have already done.
I tend to use Dreamweaver 95% of the time while she uses Visual Studio.We
are set up with a development server and two load-balanced web servers
running Windows Server 2003 IIS etc. Does anyone have any recommendations on
a system for maintaining integrity in such a situation? What have other
people been using?
--
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Halbert wrote:
> I tend to use Dreamweaver 95% of the time while she uses Visual Studio.
The simplest for you would probably be to set up Visual Source Safe. This is
a source code control system that does locking. I.e., while she's modifying
the file, you cannot. In this mechanism, there's one server that holds all
versions of all the code, and you take copies to your machine to work on
them (or, hopefully, serve them from your production servers). You make a
change by telling VSS to lock the file, at which point the read-only flag
gets cleared, and when you're done you check it back in, which updates the
central copy (with the possibility of getting old copies back, of course).
One advantage is that VSS interface is built into Visual Studio, so it'll
automatically check out a file when she starts editting it, for example. I
don't know about Dreamweaver.
The other mechanism you might want to look into is something like
"subversion", aka "svn". There are Windows clients (TortiseSVN for one)
that integrates it into Explorer, so you can check out files and put them
back with a right-click menu, along with little shortcut-style icons telling
you the status of the files. In this sort of system, you get a full copy of
all the files, and you make changes locally and then push the changes back
up. If she makes changes while you are, whoever pushes the changes back
second has to "resolve" any conflicts. If you changed the top and she
changed the bottom, it works fine. If you and she changed the same lines,
the second person will have to basically re-edit the file to say "this is
what it should look like combined".
There's a third mechanism exemplified by "git", where everyone has an entire
copy of the entire history of the system locally. This is more useful in
things like open-source software, or if you're often disconnected from the
network. You can save multiple sets of changes locally, then push them up to
the central server later. This is probably way overkill for two people.
HTH.
--
Darren New, San Diego CA, USA (PST)
Why is there a chainsaw in DOOM?
There aren't any trees on Mars.
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
> The simplest for you would probably be to set up Visual Source Safe. This
> is a source code control system that does locking. I.e., while she's
> modifying the file, you cannot. In this mechanism, there's one server
> that holds all versions of all the code, and you take copies to your
> machine to work on them (or, hopefully, serve them from your production
> servers). You make a change by telling VSS to lock the file, at which
> point the read-only flag gets cleared, and when you're done you check it
> back in, which updates the central copy (with the possibility of getting
> old copies back, of course).
>
> One advantage is that VSS interface is built into Visual Studio, so it'll
> automatically check out a file when she starts editting it, for example. I
> don't know about Dreamweaver.
>
I see there is an option in Dreamweaver to sync to a VSS database. I wonder
what means you use to sync the VSS database with the development webserver
and the two load-balanced production webservers. The business about syncing
the two production servers is always something that has bothered me too
because we have been doing it manually. Every once in a while a revision
will be made and one of the servers will fail to be updated making one of
the two servers have an out of date copy (or no copy.)
--
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Halbert wrote:
> I see there is an option in Dreamweaver to sync to a VSS database.
Cool. That simplifies things. You'll still need someone knowlegable to set
up the repository. (Said person might be you of course, but it's not nearly
as straightforward as using it.)
> I wonder
> what means you use to sync the VSS database with the development webserver
> and the two load-balanced production webservers.
VSS comes with a client software that just presents a window with the server
side and the client side, I think.
Basically, you check out the code onto the server the same way you do on the
development machines. When you want to deploy, you just refresh the checked
out version. You may need to rearrange some things to make this easy, but I
find it works well because it gives you the option to go "crap! Production
doesn't work with the version that's fine on development!" and get back to
where you were within a short time.
If you have a SQL database, things are uglier of course, since you have to
synchronize schema changes and stuff. I can advise on that if the mechanisms
aren't obvious too, but it's a fairly tedious process no matter how you work it.
> The business about syncing
> the two production servers is always something that has bothered me too
> because we have been doing it manually. Every once in a while a revision
> will be made and one of the servers will fail to be updated making one of
> the two servers have an out of date copy (or no copy.)
Yep. VSS will tell you what version is on the servers, if you log into them
and query it.
Given that both Visual Studio and Dreamweaver support VSS, I'd suggest you
find someone locally who can spend you an hour setting it up and teaching
you how to use it. It's conceptually pretty straightforward.
--
Darren New, San Diego CA, USA (PST)
Why is there a chainsaw in DOOM?
There aren't any trees on Mars.
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |