Gerenciamento de Gerenciamento de Versões Versões de Páginas Web de Páginas Web Marinalva Dias Soares Marinalva Dias Soares [email protected]Orientadora: Profª. Drª. Renata P. de M. Fortes Orientador substituto: Prof. PhD. Dilvan de Abreu Moreira USP - São Carlos USP - São Carlos Novembro/2000 Novembro/2000
37
Embed
Gerenciamento de Versões de Páginas Web Marinalva Dias Soares [email protected] Orientadora: Profª. Drª. Renata P. de M. Fortes Orientador substituto:
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Gerenciamento de Gerenciamento de VersõesVersõesde Páginas Webde Páginas Web
Espaço da versão Espaço da versão (foo)(foo) - formas de - formas de representaçãorepresentação
v1
v2
v3
v2
v3
v4
v1 v1
v2
v3
v3
v4
v5
v2
v1
b4b4
b2b2
b1b1
b3b3
branch
sucessor
merging
descendente
Espaço da versãoEspaço da versão (foo)(foo) - formas de - formas de representaçãorepresentação
Recursos utilizadosRecursos utilizados
Formulários HTMLJavaScript
CVS
CGI
ClienteCliente
ServidorServidor
CVSCVS
permite gravar o histórico de arquivos
permite que um grupo de pessoas trabalhem sobre o mesmo arquivo ao mesmo tempo
executa em várias plataformas
fornece controle de arquivos através da rede
gerencia versões de arquivos binários
CVSCVS
test2.t,vtest2.t,v
tctcyoyodyneyoyodyne
CVSROOTCVSROOT
cvsrootcvsrootlocallocal
(arquivos administrativos)
Makefile,vMakefile,v
backend.c,vbackend.c,v
driver.c,vdriver.c,v
/usr/usr
manmantc.1,vtc.1,v
testingtesting
Caminho onde
reside o
repositório
Módulos definidos
pelo usuário
Diretório com arquivos
administrativos do CVS
CVSCVS1.2.2.3.2.11
1.2.2.11 1.2.2.22 1.2.2.33
1.1 1.2 1.3 1.4 1.5
1.2.4.11 1.2.4.22 1.2.4.33
Branch 1.2.2.3.2
Branch 1.2.2
Linha principal
Branch 1.2.4
CGICGI
1. Conectar
2. Solicitar
3. Responder
4. Fechar
Cliente Servidor
A ferramenta VersionWebA ferramenta VersionWeb
Interface da aplicaçãoInterface da aplicação
VersionWeb
Usuários (autores e internautas)Usuários (autores e internautas)
Servidor HTTPServidor HTTP
CGICGI
Repositório CVS Repositório CVS
Arquitetura da VersionWeb
Interfaces da VersionWebInterfaces da VersionWeb
Gerenciamento de arquivos (para os
autores)
Lista de versões da página (para os
internautas ou grupos específicos de
internautas) através de um link
Gerenciamento de usuários (para os
administradores)
A ferramenta VersionWebA ferramenta VersionWeb
Módulos da VersionWeb
Gerenciamento
de arquivos
Gerenciamento
de arquivos
Autenticação
de usuários
Autenticação
de usuários
Gerenciamento
de usuários
Gerenciamento
de usuáriosLista de versões
da página
Lista de versões
da página
Tipo de usuário:Tipo de usuário: authors, groups ou administrator
Repository Path:Repository Path: caminho completo onde reside o repositório
Login:Login: login do usuárioPassword:Password: senha do usuário
List Directory:List Directory: Lista o conteúdo do diretório selecionado
Up Level:Up Level: sobe um nível na árvore do diretório
Rename:Rename: renomea um diretório ou arquivo selecionado
Delete:Delete: remove um diretório ou arquivo selecionado
Local checkout:Local checkout: faz checkout do diretório ou arquivo selecionado para a máquina do usuário
Remote checkout:Remote checkout: faz checkout do arquivo selecionado para alteração na própria janela do browser
Versions History:Versions History: exibe o histórico do arquivo selecionado
Versions List:Versions List: exibe a lista de versões e branches do arquivo selecionado
Add file:Add file: adiciona um arquivo no repositório
Create Directory:Create Directory: cria um diretório no repositório
Commit of the local checkout:Commit of the local checkout: faz o commit de um arquivo que foi feito checkout local
Lista de diretórios
Lista de arquivosDiretório corrente
Differences:Differences: exibe formulário com opções para localizar as diferenças entre as versões
TestesTestes
20 usuários de Computação do ICMC (Graduação, Mestrado e Doutorado)
Formulário com 14 tarefas básicas utilizando a VersionWeb
Questionário com perguntas sobre a usabilidade da VersionWeb
TestesTestes a VersionWeb facilita o entendimento das funcionalidades do CVS
a VersionWeb pode ser utilizada no desenvolvimento de software
visualização e recuperação de qualquer versão anterior interface grande em monitores 800x600
colocar help em todas as interfaces
Vantagens da VersionWebVantagens da VersionWeb manipulação dos arquivos através da Web e acesso simultâneo sobre os arquivos por vários autores a VersionWeb pode ser facilmente estendida para incorporar outros recursos do CVS sua aplicabilidade não é limitada à autoria de páginas Web os recursos utilizados (formulários HTML e CGIs) são simples e de fácil entendimento
Limitações da VersionWebLimitações da VersionWeb Executa em servidores Unix
Requer a re-compilação dos fontes quando instalada em uma nova máquina
Requisitos para InstalaçãoRequisitos para Instalação
Informações adicionais e download do pacote VersionWeb em:
CVS (versão 1.10 ou superior) Sistema operacional Unix ou Linux
Servidor HTTP
V-Web – V-Web – permite visualizar um conjunto de versões da página e adicionar novas versões a esse conjunto
não permite o controle de versões através da web.
não permite visualizar as diferenças entre as versões
utiliza o RCS e CGI
Trabalhos relacionadosTrabalhos relacionados
AIDEAIDE (AT&T Internet Difference Engine) localiza e
mostra alterações nas páginas (caracteres)
Permite visualizar de forma gráfica os
relacionamentos entre as as páginas
não permite a autoria através da Web
permite recuperar versões mais recentes
utiliza o RCS e CGI
o usuário deve especificar a URL da página
Trabalhos relacionadosTrabalhos relacionados
ConclusõesConclusões O controle de versão de arquivos através da Web é totalmente viável
Não é preciso nenhum mecanismo sofisticado de programação para permitir o controle de versão na Web
O uso de um ambiente não orientado a linha de comando tem maior aceitação para o controle de versão por parte dos autores e eles cometem menos erros
Trabalhos futurosTrabalhos futuros Gerar configurações de sites Web
Gerenciamento de permissões de acesso ao repositório para cada autor
Construção de uma ferramenta para exibir as diferenças entre arquivos binários
Avaliação da VersionWeb em diferentes ambientes de trabalho
PublicaçõesPublicações XIII Simpósio Brasileiro de Engenharia de Software, IV Workshop de Teses em Engenharia de Software, Florianópolis, Santa Catarina, Brasil, outubro de 1999.
IMSA - International Conference on Internet Multimedia Systems Applications, Las Vegas, EUA, novembro de 2000.
Artigo submetido ao Linux Journal em novembro de 2000