In software development, distributed version control (also known as distributed revision control) is a form of version control in which the complete codebase, including its full history, is mirrored on every developer's computer. Compared to centralized version control, this enables automatic management branching and merging, speeds up most operations (except pushing and pulling), improves the ability to work offline, and does not rely on a single location for backups. Git, the world's most popular version control system, is a distributed version control system. In 2010, software development author Joel Spolsky described distributed version control systems as "possibly the biggest advance in software development technology in the [past] ten years". Distributed version control systems (DVCS) use a peer-to-peer approach to version control, as opposed to the client–server approach of centralized systems. Distributed revision control synchronizes repositories by transferring patches from peer to peer. There is no single central version of the codebase; instead, each user has a working copy and the full change history. Advantages of DVCS (compared with centralized systems) include: Allows users to work productively when not connected to a network. Common operations (such as commits, viewing history, and reverting changes) are faster for DVCS, because there is no need to communicate with a central server. With DVCS, communication is necessary only when sharing changes among other peers. Allows private work, so users can use their changes even for early drafts they do not want to publish. Working copies effectively function as remote backups, which avoids relying on one physical machine as a single point of failure. Allows various development models to be used, such as using development branches or a Commander/Lieutenant model. Permits centralized control of the "release version" of the project On FOSS software projects it is much easier to create a project fork from a project that is stalled because of leadership conflicts or design disagreements.

À propos de ce résultat
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.
Cours associés (8)
COM-490: Large-scale data science for real-world data
This hands-on course teaches the tools & methods used by data scientists, from researching solutions to scaling up prototypes to Spark clusters. It exposes the students to the entire data science pipe
ENG-270: Computational methods and tools
This course prepares students to use modern computational methods and tools for solving problems in engineering and science.
ENG-209: Data science for engineers with Python
Ce cours est divisé en deux partie. La première partie présente le langage Python et les différences notables entre Python et C++ (utilisé dans le cours précédent ICC). La seconde partie est une intro
Afficher plus
Séances de cours associées (36)
Système de contrôle de version: Bases et flux de travail
Introduit les bases des systèmes de contrôle de version, en mettant l'accent sur les opérations Git et les stratégies de branchement.
Présentation de Jupyter Notebook
Présente la configuration de l'environnement, les bases Git et les fonctionnalités Jupyter Notebook avec des exemples pratiques.
Science collaborative des données : outils et techniques
Introduit des outils collaboratifs de science des données comme Git et Docker, en mettant l'accent sur le travail d'équipe et les exercices pratiques pour un apprentissage efficace.
Afficher plus
Publications associées (93)

A Cavity-Microscope for Quantum Simulations with Locally-Controllable All-to-All Interactions

Nick Jacob Sauerwein

This thesis presents the development, construction, and benchmark of an experimental platform that combines cold fermionic 6Li atoms with locally controllable light-matter interactions. To enable local control, a new device, the cavity-microscope, was crea ...
EPFL2024

Ludwig van Beethoven - Piano Sonatas (A corpus of annotated scores)

Martin Alois Rohrmeier, Markus Franz Josef Neuwirth, Johannes Hentschel

This corpus of annotated MuseScore files has been created within the DCML corpus initiative and employs the DCML harmony annotation standard. It is one out of nine similar corpora that have been grouped together to An Annotated Corpus of Tonal Piano Music ...
Zenodo2022

Frédéric Chopin - Mazurkas (A corpus of annotated scores)

Martin Alois Rohrmeier, Markus Franz Josef Neuwirth, Johannes Hentschel

This corpus of annotated MuseScore files has been created within the DCML corpus initiative and employs the DCML harmony annotation standard. It is one out of nine similar corpora that have been grouped together to An Annotated Corpus of Tonal Piano Music ...
Zenodo2022
Afficher plus
Concepts associés (16)
GitHub
GitHub (, entreprise GitHub, Inc.) est un service web d'hébergement et de gestion de développement de logiciels, utilisant le logiciel de gestion de versions Git. Ce site est développé en Ruby on Rails et Erlang par Chris Wanstrath, PJ Hyett et Tom Preston-Werner. GitHub propose des comptes professionnels payants, ainsi que des comptes gratuits pour les projets de logiciels libres. Le site assure également un contrôle d'accès et des fonctionnalités destinées à la collaboration comme le suivi des bugs, les demandes de fonctionnalités, la gestion de tâches et un wiki pour chaque projet.
Système de suivi des bugs
Un système de suivi des bugs (de l'anglais bug tracking system) est un logiciel qui permet d'effectuer un suivi des bugs signalés dans le cadre d'un projet de développement de logiciel. Il permet d'aider les utilisateurs et les développeurs à améliorer la qualité d'un logiciel. Les utilisateurs soumettent leurs demandes d'assistance dans le logiciel. Les développeurs sont alors toujours au fait des bugs rencontrés.
Comparison of version-control software
In software development, version control is a class of systems responsible for managing changes to computer programs or other collections of information such that revisions have a logical and consistent organization. The following tables include general and technical information on notable version control and software configuration management (SCM) software. For SCM software not suitable for source code, see Comparison of open-source configuration management software.
Afficher plus

Graph Chatbot

Chattez avec Graph Search

Posez n’importe quelle question sur les cours, conférences, exercices, recherches, actualités, etc. de l’EPFL ou essayez les exemples de questions ci-dessous.

AVERTISSEMENT : Le chatbot Graph n'est pas programmé pour fournir des réponses explicites ou catégoriques à vos questions. Il transforme plutôt vos questions en demandes API qui sont distribuées aux différents services informatiques officiellement administrés par l'EPFL. Son but est uniquement de collecter et de recommander des références pertinentes à des contenus que vous pouvez explorer pour vous aider à répondre à vos questions.