PROMO JULIO en CVOSOFT United States Of America: 💎Calidad, 🔥Bonificaciones, 🥶Precios Congelados y MÁS!

 X 

✒️SAP Fiori Los sistemas de control de versiones

SAP Fiori Los sistemas de control de versiones

SAP Fiori Los sistemas de control de versiones

1 | Version Control Systems

Centralized and Distributed Version Control Systems

Version control systems are essential tools for managing changes to source code over time. There are two primary types: centralized and distributed.

  • Centralized Version Control Systems (CVCS): In a centralized system, such as Subversion (SVN), all version history is stored on a central server. Developers check out files, work on them locally, and then check the files back into the central server. This setup means that to work on the code, you must be connected to the server.
  • Distributed Version Control Systems (DVCS): In contrast, a DVCS like Git, Mercurial, or Bazaar allows each developer to have a full copy of the repository on their local machine. This enables them to work offline and later synchronize their changes with the central repository once they reconnect to the network.

Advantages of Distributed Version Control Systems:

  • Change Tracking: Every change to the files is recorded with details such as the time, the author, and a message describing the change.
  • Synchronization: Multiple developers can work on the same project simultaneously and keep their copies up-to-date with the latest changes.
  • Backup and Restoration: Changes can be saved, and any file can be restored to any previous state.
  • Branching and Merging: Developers can create branches to work on new features independently and merge them back into the main project when ready.

Characteristics of Git:

Git is particularly noted for its efficiency in managing branches. It allows developers to make changes in separate branches and merge them with the main project effortlessly. This makes it an invaluable tool for collaborative development.

2 | What is Git?

Git is a powerful version control system used to manage and track changes in code. It is known for its speed, simplicity, and reliability in maintaining versions of projects with numerous files. Git was designed to facilitate efficient, collaborative development by allowing developers to work on their local copies and synchronize changes with a global repository.

Benefits of Git:

  • Speed and Efficiency: Git is exceptionally fast in handling branches, which makes it suitable for large projects.
  • Distributed Development: Every developer has a complete copy of the repository, allowing for offline work and reducing the risk of data loss.
  • Flexibility: Branching and merging are core features that support multiple lines of development.
  • Open Source and Community Support: Git is free and open-source, with extensive community support and numerous resources available.

3 | Advantages of Git

Git provides several significant advantages over traditional version control systems:

  • No Single Point of Failure: Being a distributed system, Git does not rely on a central server, which allows work to continue even if the server is down.
  • Integration: Git integrates seamlessly with various development tools and platforms, supporting continuous integration and deployment, automated testing, and work item tracking.
  • Community Support: Git's popularity ensures robust community support, abundant resources, and tools for developers.
  • Team Productivity: Git enhances team productivity by enabling collaboration, policy enforcement, process automation, and improved visibility of work.
  • Branch Policies and Pull Requests: Platforms like GitHub and Azure DevOps allow teams to set branch policies and conduct code reviews through pull requests, ensuring code quality and knowledge sharing.

4 | The Distributed System

The Repository

A Git repository is a collection of files and their version history, organized in a directory structure. It includes the following key areas:

  • Working Directory: The workspace where developers modify files. Changes here are in the "Modified" state.
  • Staging Area: Files that are staged for the next commit. These changes are in the "Prepared" state.
  • Git Repository: The database where committed changes are stored permanently. Once changes are committed, they move from the "Prepared" to the "Confirmed" state.

The Three States in Git:

  • Modified: Changes are made in the working directory.
  • Staged: Changes are selected and staged in preparation for a commit.
  • Committed: Changes are saved in the repository.

5 | The Stages of a File in Git

Workflow and Commands

  • git add: Moves changes from the working directory to the staging area.
  • git commit: Records the staged changes in the repository with a descriptive message.

Branching and Merging

Branches are essential for managing different lines of development. The main branch, typically called "master" or "main," contains the stable code ready for production. Other branches are created for new features or fixes and are merged back into the main branch once the work is complete.

  • Creating a Branch: Use git checkout -b branch_name to create a new branch.
  • Merging Branches: Use git merge branch_name to merge changes from a branch into the current branch.

Advanced Workflows

In advanced workflows, continuous integration systems automatically check for conflicts during merges. Developers are notified of conflicts, which they must resolve before the merge is completed. Once resolved, changes are merged into the "development" branch and then into "master" for production deployment.

# Basic Commands

# Initialize a new Git repository
git init

# Clone a repository into a new directory
git clone <repository_url>

# Show the working directory status
git status

# Add a file to the staging area
git add <file>

# Commit changes with a message
git commit -m "commit message"

# Show the commit history
git log

# Show changes between commits, commit and working tree, etc.
git diff

# Display help information about Git
git help

# Set the global username
git config --global user.name "Your Name"

# Set the global email address
git config --global user.email "your.email@example.com"


# Intermediate Commands

# List all branches
git branch

# Create a new branch
git branch <branch_name>

# Switch to a different branch
git checkout <branch_name>

# Merge a branch into the current branch
git merge <branch_name>

# List remote repositories
git remote -v

# Fetch branches and commits from the remote repository
git fetch

# Fetch and merge changes from the remote repository
git pull

# Push changes to the remote repository
git push

# Remove a file from the working directory and staging area
git rm <file>

# Stash changes in the working directory
git stash

# Apply stashed changes
git stash pop

# Create a new tag
git tag <tag_name>

# Show various types of objects (commits, tags, etc.)
git show <commit>


# Advanced Commands

# Reapply commits on top of another base tip
git rebase <branch_name>

# Apply the changes introduced by some existing commits
git cherry-pick <commit>

# Revert a previous commit
git revert <commit>

# Reset current HEAD to the specified state
git reset <commit>

# Start binary search to find the commit that introduced a bug
git bisect start

# Mark the current commit as bad
git bisect bad

# Mark the current commit as good
git bisect good

# Show the reference logs
git reflog

# Rewrite branches with a filtered history
git filter-branch --tree-filter '<command>' HEAD

# Show what revision and author last modified each line of a file
git blame <file>

# Add a new submodule to the repository
git submodule add <repository_url>

# Cleanup unnecessary files and optimize the local repository
git gc

 

 

 


Sobre el autor

Publicación académica de Jaime Eduardo Gomez Arango, en su ámbito de estudios para la Carrera Consultor en SAP Fiori.

SAP Expert


Jaime Eduardo Gomez Arango

Profesión: Ingeniero de Sistemas y Computación - España - Legajo: SW34C

✒️Autor de: 149 Publicaciones Académicas

🎓Cursando Actualmente: Consultor en SAP Fiori

🎓Egresado de los módulos:

Disponibilidad Laboral: FullTime

Presentación:

Ingeniero de sistemas y computación con 8 años de experiencia el desarrollo frontend & backend (react/node) y en cloud (aws), actualmente desarrollando habilidades en sap btp, ui5, abap y fiori.

Certificación Académica de Jaime Gomez

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "Los sistemas de control de versiones" de la mano de nuestros alumnos.

SAP Junior

Los sistemas de Control de Versiones Centralizados (VCS) Son aplicaciones que nos permite realizar el control de modificaciones del código fuente de manera automática y eficiente. Podemos dar seguimiento quien realizo modificaciones y causo algún incidente en el código. GIT: Es un sistemas de control de versiones distribuidas fue inventado en el año 2005 por Linux Torbal creador del conocido sistema operativo Linux. Principal característica es que GIT es un sistema distribuido. No dependemos de internet y es gratuito también tiene una gran comunidad que le da soporte al sistema.

Acceder a esta publicación

Creado y Compartido por: Henry Nelson Loja Duchimaza / Disponibilidad Laboral: FullTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Sistema de Versiones : Existen dos tipos de sistemas de versiones Sistema de control de versiones centralizado VCS Sistema de control de versiones distribuidos DVCS El software GIT : es un software para el manejo de versiones, permite desarrollar un trabajo en equipo de manera inteligente y rápida Cada vez que alguien cambia el codigo, se genera una nueva versión para el proyecto, así no hay riesgo de perder ninguna información para el proyecto Ventajas : Gratis Open Source Rápido Eficiente Desarrollo simultáneo Se integra a la mayoría de las herramientas y productos Soporte técnico de la comunidad solida

Acceder a esta publicación

Creado y Compartido por: Detriana Barrios / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Junior

Git - manejo de versiones software que permite el manejo de control de versiones de nuestro codigo. Ventajas de Git desarrollo simultaneo: podemos tener nuestro propia copia de codigo en local y trabajar simultaneamente en nuestras propias ramas o branches. versiones mas rapidas. integracion integrada:git es compatible en la mayoria de herramientas y productos. soporte tecnico de una comunidad solida. git funciona con cualquier equipo. solicitudes de incorporacion de cambios: permite analizar cambios con el team antes de fusionarlos a la main branch. Repositorio conjunto de archivos almacenados en una o varias carpetas para el manejo y configuracion de nuestro proyecto. working directory: aqui donde realizamos cambios...

Acceder a esta publicación

Creado y Compartido por: Gabriel Gavaz

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

El sistema de control de versiones El control de versiones en programación se refiere a registrar los cambios en el código fuente. Hay dos tipos de sistemas: los centralizados y los distribuidos. Los sistemas centralizados permiten controlar las modificaciones del código y revertir cambios, comparar diferencias, y recuperar archivos perdidos. También facilitan el trabajo simultáneo de desarrolladores en un proyecto. Por otro lado, los sistemas distribuidos permiten crear repositorios locales y trabajar sin conexión a la red. Algunos ejemplos son Git, Mercurial y Bazaar. Los sistemas distribuidos tienen características como reporte de cambios, sincronización, backup y restauración,...

Acceder a esta publicación

Creado y Compartido por: Nilson Parra Martinez / Disponibilidad Laboral: PartTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP SemiSenior

Los Sistemas de Gestion de Versiones : Hay 2 tipos principales: VCS que es centralizado y DVCS que es distribuido. En el caso de GIT se trata de un software DVCS. GIT administra archivos de un proyecto que pueden ser actualizados en simultaneo por distintos miembros del equipo de desarrollo. Al permitir la descarga al entorno local de cada programador brinda mayor independencia permitiendo luego la integración en forma ordenada de la versión central. Es por esto que se trata de un DVCS y esa es su principal ventaja contra el modelo VCS donde todo el desarrollo se consolida en un servidor central. En GIT, quien haga cambios genera una nueva versión de ese archivo de codigo para el proyecto. Se trata de un SW gratuito y...

Acceder a esta publicación

Creado y Compartido por: Cristian Cash

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

¿Qué es Git? Git es un sistema de control de versiones distribuido que permite a los desarrolladores realizar un seguimiento de los cambios en el código fuente durante el desarrollo de software. Fue creado por Linus Torvalds y es conocido por ser eficiente, flexible y escalable. Principales conceptos de Git: Repositorio: Un repositorio es un espacio donde se almacena la información relacionada con un proyecto. Puede ser local o remoto. Commit: Un commit es un conjunto de cambios en el código. Cada commit tiene un mensaje que describe los cambios realizados. Rama (Branch): Una rama es una línea de...

Acceder a esta publicación

Creado y Compartido por: Claudio Marcelo Hermann / Disponibilidad Laboral: FullTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

centralizados vcs permiten realizar control de modificaciones de codigo fuente de manera automatica y eficiente Subversion CVS distribuidos permiten crear un repositorio local Git Mercurial Bazaar Sincronizacion Branch Merge enviamos modificaciones al proyecto principal Github Gitlab Working directory estamos trabajando staging area donde van los archivos que estamos modificando área commit confirmado Add Push Checkout crear una rama hotfix para corregir errores

Acceder a esta publicación

Creado y Compartido por: Enrique Gomez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


1 | Version Control Systems Centralized and Distributed Version Control Systems Version control systems are essential tools for managing changes to source code over time. There are two primary types: centralized and distributed. Centralized Version Control Systems (CVCS): In a centralized system, such as Subversion (SVN), all version history is stored on a central server. Developers check out files, work on them locally, and then check the files back into the central server. This setup means that to work on the code, you must be connected to the server. Distributed Version Control Systems (DVCS): In contrast, a DVCS like Git, Mercurial, or Bazaar allows each developer to have a full copy of the repository on their local machine. This...

Acceder a esta publicación

Creado y Compartido por: Jaime Eduardo Gomez Arango / Disponibilidad Laboral: FullTime + Carta Presentación

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 79.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

Buscador de Publicaciones:

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!