Questões de Concurso sobre Versionamento de Código-Fonte (Controle de Versão)

 
 
Disciplina 1
Assunto 8
Banca
Instituição
Cargo
Ano
Carreira
Área de formação
Escolaridade
Dificuldade
 
Comentários:
Professores
Alunos
Meus Comentários
Vídeo
 
Minhas questões:
Resolvidas
Não resolvidas
Certas
Erradas
 
Tipo de questão:
Certo e errado
Múltipla escolha
Incluir questões:
Anuladas
Desatualizadas
 
Questões:
Todas as questões
 
Filtro simplificado
 
Questões
Todas as questões
 
261 questões encontradas
Questões por página
20
Mais recentes
 

Os sistemas de controle de versão são ferramentas de software que ajudam a gerência de mudanças no código-fonte. Em relação a esses sistemas, assinale a alternativa correta.


A

SVN e Git são exemplos de softwares de controle de versão distribuídos.


B

Bissecção é um método disponível em algum desses softwares, que pode ser usado para localizar em qual revisão um bug foi introduzido.


C

Um repositório no Git somente pode existir remotamente, e nunca localmente.


D

A operação de commit nunca pode ser uma operação atômica.


E

É impossível fazer merges de forma automática no Git.

Foi solicitado que você corrigisse um defeito em um sistema cujo código-fonte está armazenado em um repositório GIT. A equipe definiu que é necessário utilizar o padrão “feature branch”, no qual os desenvolvedores precisam criar um branch para cada demanda em que vão trabalhar. As modificações devem ser feitas nesse branch criado a partir do branch de desenvolvimento principal. Após o término das alterações necessárias, o código deve ser reintegrado no ramo principal por uma equipe de revisores. Analise as operações abaixo:


1. git push

2. git checkout

3. git clone

4. git commit

5. git add


Para que você possa trabalhar na correção do defeito, utilizando o padrão “feature branch”, a ordem correta das operações acima seria:


A

2 – 1 – 3 – 4 – 5.


B

3 – 1 – 2 – 4 – 5.


C

3 – 2 – 5 – 4 – 1.


D

5 – 3 – 4 – 2 – 1.


E

5 – 3 – 4 – 1 – 2.

Sobre versionamento de código utilizando git, marque a alternativa que representa a seguinte definição: Gera uma solicitação para que um conjunto de alterações possa ser revisado, discutido e alterado se necessário antes de fazer parte da árvore requerida.


A
Commit

B
Push

C
Pull request

D
Checkout

Um Técnico em Web Design tem a incumbência de verificar a possibilidade de uso de um Gerenciamento de Repositório (SVN), sendo que em sua pesquisa esse técnico verificou que, nesse repositório, a operação de


A

salvar no repositório mudanças feitas em uma cópia de trabalho, corresponde à operação denominada commit.


B

criar um repositório corresponde à operação de checkout.


C

descartar modificações feitas no repositório corresponde à operação denominada status.


D

sincronizar uma cópia de trabalho com o repositório corresponde a uma operação de revisão.


E

criar uma cópia de trabalho, a partir do repositório, corresponde à operação denominada commit.

Uma Analista de TI está utilizando o software Git para gerenciar o controle de versões do sistema que está em desenvolvimento. Em condições ideais, ela digitou os comandos elencados a seguir.


I. git add regrasfichalimpa.html

II. git add trf4css/

III. git add .

IV. git commit -m "primeira etapa do projeto do sistema"

V. git log


O comando indicado em


A

II faz com que o arquivo trf4css seja incluído na lista dos que terão versões controladas.


B

III faz com que todos os arquivos do sistema sofram um reset para a versão inicial ou versão zero.


C

V lista todos os ataques de segurança da informação, ou seja, modificações não autorizadas, que os arquivos do sistema sofreram.


D

I faz com que todos os hiperlinks da página regrasfichalimpa.html sejam monitorados pelo Git.


E

IV salva o estado atual de todos os arquivos e apresenta sua listagem indicada como “primeira etapa do projeto do sistema”.

O Git possui diversos tipos de referências, os comandos para criar, mover e deletar referências variam. Analise as afirmativas sobre alguns tipos de referências no Git e assinale a alternativa CORRETA:


I. Heads: refere-se a um objeto local.

II. Remotes: refere-se a um objeto que existe em um repositório remoto.

III. Stash: refere-se a um objeto ainda não comitado.


A

Existe apenas uma afirmativa correta.


B

Existem apenas duas afirmativas corretas.


C

Todas as afirmativas estão corretas.


D

Nenhuma afirmativa está correta.

Sobre o Git, é correto afirmar que:


A

o sistema de armazenamento de novas versões no Git é semelhante ao de sistemas de controle de versão como o Subversion, no qual são armazenadas as diferenças individuais de cada artefato para a versão anterior, caso essas diferenças existam.


B

o comando git clone obtém uma cópia somente da versão mais recente dos arquivos monitorados de um repositório.


C

um branch permite que o desenvolvedor possa efetuar commits em uma nova ramificação, no histórico de versões de um projeto, com a desvantagem de que não é possível retornar a ramificações anteriores do histórico de versões e prosseguir a partir delas.


D

o Git é um sistema de versão distribuído, ou seja, no qual os clientes fazem cópias somente da versão mais atual de cada arquivo em um conjunto de nós distribuídos que fazem parte do sistema.


E

assim como em outros sistemas de controle de versão, no Git é possível criar tags que são marcações em pontos específicos na história do repositório.

Um Analista de Sistemas optou por utilizar o Subversion como sistema de controle de versão em um projeto Java, porque este aplicativo


A

funciona de forma distribuída (ou descentralizada), sendo muito útil para desenvolvimento de software em geral.


B

é similar ao Mercurial e Bazaar, que também utilizam um repositório centralizado


C

tem repositórios maiores e com mais recursos se comparado ao Git, além de usar algoritmo de compressão mais eficiente.


D

trabalha com repositório único, sendo utilizado tradicionalmente em projetos construídos com essa linguagem.


E

funciona de forma híbrida, ora distribuído, ora centralizado, e possui interface simples e intuitiva.

Assinale o comando que deve ser executado, em um repositório Git, através do terminal, para criar um branch chamado ufrj e colocá-lo como ativo.


A

git checkout ufr


B

git branch -d ufrj


C

git checkout -b ufrj


D

git pull ufr


E

git push ufrj

Considere o programa Java a seguir, executado em um ambiente com Java 8 (JDK 1.8) e implementado no IDE Eclipse versão 4.6.3.


  1. public class Perfil {
  2. ---------public static void main(String[] args) {
  3. --------------------int i = 29 % 3;
  4. --------------------switch(i) {
  5. --------------------------------case 1: System.out.print("UFRJ"); break;
  6. --------------------------------case 2: System.out.print("Aluno");
  7. --------------------------------case 3: ( System.out.print("Professor"); break; }
  8. --------------------------------case 4: System.out.print("Técnico");
  9. --------------------------------default: System.out.print("Indefinido");
  10. --------------------}
  11. ---------}
  12. }


Na execução do programa apresentado, a saída obtida será:


A

Aluno Professor Técnico.


B

Aluno Professor Técnico Indefinido.


C

Aluno Professor Indefinido.


D

Aluno Professor UFRJ.


E

Aluno Professor.

Segundo Sommerville (2011 ), é preciso aplicar a reengenharia de software para fazer com que os sistemas legados de software sejam mais fáceis de serem mantidos. A entrada para o processo é um programa legado e a saída, uma versão melhorada e reestruturada do mesmo programa. Sendo assim, assinale a opção que apresenta as atividades do modelo geral de reengenharia.


A

Modelagem de negócios, Requisitos, Análise e projeto, Implementação, Teste e Implantação.


B

Análise e definição de requisitos, Projeto de sistema e software, Implementação e testes unitários, Integração e teste de sistema, Operação e manutenção.


C

Definição de objetivos, Avaliação e redução de riscos, Desenvolvimento e validação, Planejamento.


D

Especificação de requisitos, Análise de componentes, Alterações de requisitos, Projeto do sistema com reúso, Desenvolvimento e integração, Validação de sistema.


E

Tradução do código-fonte, Engenharia reversa, Melhoria de estrutura de programa, Modularização de programa, Reengenharia de dados.

O GIT é um sistema de controle de versão distribuído, e também um gerenciamento de código fonte. Projetado e desenvolvido por Linus Torvalds, a ferramenta foi utilizada por muitos projetos ao redor do mundo. A respeito do Git, é incorreto afirmar que:


A

o comando ‘git commit’ grava as mudanças realizadas no repositório atual.


B

o comando ‘git clone’ copia um repositório existente em um novo diretório.


C

o comando ‘git reset’ modifica a HEAD atual para um estado específico.


D

o comando ‘git init’ pode reinicializar um repositório já criado.


E

o comando ‘git bisect’ divide o repositório atual em um ou mais repositórios diferentes.

A respeito de sistemas de controle de versão, assinale a alternativa correta.


A

O SVN pode ser considerado um sistema de controle de versão distribuído.


B

O GIT pode ser considerado um sistema de controle de versão centralizado.


C

Um conflito representa uma situação onde dois usuários modificam o mesmo arquivo em intervalos de tempo distintos.


D

A operação de mesclagem (merge, em inglês) consiste na junção automática de diferentes versões de um arquivo.


E

Uma cópia local sempre estará atualizada quando se usa o controle de versões GIT.

Ferramentas de controle de versão são imprescindíveis no contexto atual de desenvolvimento de software, pois permitem a colaboração entre a equipe de desenvolvimento de forma distribuída. São exemplos open source (código aberto) de ferramentas de controle de versão:


A

Subversion e Git.


B

Postfix e VSS.


C

StarTeam e Python.


D

Ruby on Rails e Extreme Programing (XP).

Com relação ao controle de versão, as novas versões do NetBeans IDE, como a 8.1,

A
permitem que se acesse somente o repositório do Mercurial sem precisar da instalação de plug-ins especiais.

B
permitem que se acessem os repositórios do Git e do Mercurial sem precisar de configuração especial.

C
permitem que se acesse somente o repositório do Git sem precisar de configurações especiais.

D
só permitem que se acessem os sistemas de controle de versão centralizados, como o Git.

E
não permitem que se acessem os repositórios de controle de versão sem a instalação de plug-ins especiais.
 
Ir para a página:
OK
 
Gerar simulado