Controle de versãoVersion control

O controle de versão é um sistema para gerenciar arquivos em várias versões diferentes e, no desenvolvimento de software, geralmente tem a contribuição de muitos desenvolvedores.Version control is a system for managing files over many different versions, and - in software development - is generally contributed to by many developers. O objetivo da entidade de qualquer sistema de controle de versão (VCS) é encontrar uma solução que permite que todos os usuários trabalhem na base de código ao mesmo tempo.The principal purpose of any version control system (VCS) is to find a solution that enables all users to work on the codebase at the same time.

O núcleo de qualquer sistema de controle de versão é um repositório, que atua como o armazenamento de dados central para todos os diferentes arquivos, de forma semelhante a um servidor de arquivos.At the core of any version control system is a repository, which acts as the central data store for all the different files - similar to a file server. No entanto, diferente de um servidor de arquivos, o repositório contém todo o histórico do projeto e todas as revisões que foram feitas.However, unlike a file server, the repository contains the entire history of the project and all revisions that have been made.

Se o repositório for um armazenamento de dados central, é lógico que cada usuário tenha um repositório local dos dados para que eles possam trabalhar nele.If the repository is the central data store, it is logical for each user to have a local store of the data, allowing them to work on it. Isso é chamado de uma cópia funcional.This is called a working copy. No Visual Studio para Mac, sua cópia funcional será exibida da mesma forma que qualquer outro diretório local em seu computador, permitindo que você possa ler e gravar em qualquer um dos arquivos.In Visual Studio for Mac your working copy will appear just as any other local directory on your machine, allowing you to read from and write to any of the files. No entanto, como o Visual Studio para Mac tem integração do sistema de Controle de versão, você pode usar o Subversion e o Git sem deixar o IDE.However, because Visual Studio for Mac has Version control system integration, you can use Subversion and Git without leaving the IDE.

O Subversion é um sistema centralizado de controle de versões, o que significa que há um único servidor que contém todos os arquivos e as revisões do qual os usuários podem fazer check-out de qualquer versão de qualquer arquivo.Subversion is a centralized version control system, which means that there is a single server that contains all files and revisions from which users can check out any version of any file. Ao fazer check-out de arquivos de um repositório Subversion remoto, o usuário receberá um instantâneo do repositório no momento em questão.When files are checked out from a remote Subversion repository, the user gets a snapshot of the repository at that point in time.

O Git é um sistema de controle de versão distribuído que permite que as equipes trabalhem nos mesmos documentos simultaneamente.Git is a distributed version control system that allows teams to work on the same documents simultaneously. Com o Git, pode haver um único servidor que contém todos os arquivos, mas o repositório inteiro está clonado localmente para seu computador sempre que um repositório passar por check-out dessa fonte central.With Git there might be a single server that contains all the files, but the entire repository is cloned locally to your machine whenever a repository is checked out from this central source.

Conceitos básicosBasic Concepts

O Visual Studio para Mac dá suporte aos sistemas de controle de versão do Git e do Subversion.Visual Studio for Mac provides support for both Git and Subversion version control systems. O artigos a seguir exploram a configuração de repositórios do Git e do Subversion por meio do Visual Studio para Mac, bem como funcionalidades simples como revisar, confirmar e efetuar push nas alterações.The following articles explore setting up Git and Subversion repositories through Visual Studio for Mac, as well as simple functionality such as reviewing, committing, and pushing changes.