🕷️ Crawler Inspector

URL Lookup

Direct Parameter Lookup

Raw Queries and Responses

1. Shard Calculation

Query:
Response:
Calculated Shard: 174 (from laksa035)

2. Crawled Status Check

Query:
Response:

3. Robots.txt Check

Query:
Response:

4. Spam/Ban Check

Query:
Response:

5. Seen Status Check

ℹ️ Skipped - page is already crawled

đź“„
INDEXABLE
âś…
CRAWLED
1 day ago
🤖
ROBOTS ALLOWED

Page Info Filters

FilterStatusConditionDetails
HTTP statusPASSdownload_http_code = 200HTTP 200
Age cutoffPASSdownload_stamp > now() - 6 MONTH0.1 months ago
History dropPASSisNull(history_drop_reason)No drop reason
Spam/banPASSfh_dont_index != 1 AND ml_spam_score = 0ml_spam_score=0
CanonicalPASSmeta_canonical IS NULL OR = '' OR = src_unparsedNot set

Page Details

PropertyValue
URLhttps://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/
Last Crawled2026-04-18 20:59:51 (1 day ago)
First Indexed2025-05-27 01:24:25 (10 months ago)
HTTP Status Code200
Meta TitleComo Deshacer Commits en Git (Forma Local y Remota) - Parte 1
Meta Descriptionnull
Meta Canonicalnull
Boilerpipe Text
En esta página: Partes Deshaciendo Commits Deshaciendo Localmente Commits para evitar Archivos no deseados Deshaciendo Localmente Commits con Mensajes de confirmación mal escritos Deshaciendo Localmente Commits para Agregar cambios al último commit Nota (s) En la industria actual hay muchos desarrolladores y equipos de trabajo que suelen usar Git y GitHub para gestionar los repositorios de sus proyectos. Git es el sistema de control de versiones (VCS) más popular del mundo actualmente, nos permite hacer un seguimiento de los cambios de archivos basados en texto. Pero a veces como seres humanos podemos cometer errores a la hora de subir cambios a GitHub, en este Post te enseñare como deshacer estos cambios o commits antes de ser enviados, vamos con ello. Partes Parte 1 Parte 2 (Final) Antes de continuar, te invito a leer los siguientes artículos para que estés familiarizado con este tutorial: Que es Git, como utilizarlo y otros detalles Conceptos y Técnicas de Git que debes saber antes de unirte a un Equipo de Git – Parte 1 Que son las Ramas (Branches) en Git, como utilizarlas y otros detalles Como usar la versión GUI de Git (No Consola GitBash) Puedes leer más en la categoría Git Asimismo te invito a escuchar el   Podcast : “ 5 Consejos para ser un Programador más Productivo ” (No son los clásicos consejos técnicos de programación, si no de rutinas y buenos hábitos cotidianos): Bien ahora continuemos con el Post: Como Deshacer Commits en Git (Forma Local y Remota) – Parte 1.  Para este Post haré uso de este repositorio el cual pertenece al tutorial llamado Como Crear un Reloj Digital (Numérico) con JavaScript . Bueno ahora pasemos a realizar operaciones en el repositorio. Deshaciendo Commits Los commits de Git más fáciles de deshacer son los que aún no han sido enviando a un repositorio remoto como GitHub, Bitbucket, etc. Como usuario propietario, eres libre de hacer cualquier cosa en tu repositorio local. Pero cuando se trata de editar un historial de commits que se envían a  un repositorio remoto, que por cierto pueden ser usados públicamente una ves que se encuentran en línea. Esto significa que estamos poniendo en peligro el trabajo de otros desarrolladores al destruir el historia de git que ya está en uso. Por ello vamos a ver casos de como deshacer commits local y remotamente. En esta primera parte vamos a ver casos de manera local. Deshaciendo Localmente Commits para evitar Archivos no deseados Supongamos que estoy a punto de realizar un commit en mi repositorio local, haciendo uso del comando git add . o git add –all los cuales agregan todos los cambios de archivo al área de preparación en el repositorio. A veces podemos olvidar que algunos archivos no están relacionados con ese commit y no deberíamos de incluirlos. Por suerte no es demasiado tarde, ya que podemos hacer uso del comando git reset agregando el nombredelarchivo que no queremos incluir. Por ejemplo si en mi repositorio local en la PC tengo un archivo llamado test.rar y ese archivo no forma parte del proyecto y no lo quiero incluir. 1 2 3 4 5 6 7 8 / reloj - numerico - javascript    ├── / css    ├── / js    ├── index . html    ├── README . md    ├── test . rar // Omitir este Archivo Puedo hacer los pasos correspondientes para subir cambios a mi repositorio remoto, pero luego de ejecutar el comando git add . debo de  escribir el comando git reset test.rar para no incluir ese archivo y luego continuar con los pasos respectivos para subir los cambios. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 // Preparo los archivos git add . // No incluir el archivo test.rar git reset test . rar // Preparar el Commit git commit - m "Cambios" [ main 08c3d2f ] Cambios 1 file changed , 1 insertion ( + ) , 1 deletion ( - ) // Subir los cambios al repositorio remoto (GitHub) git push Enumerating objects : 5 , done . Counting objects : 100 % ( 5 / 5 ) , done . Delta compression using up to 8 threads Compressing objects : 100 % ( 3 / 3 ) , done . Writing objects : 100 % ( 3 / 3 ) , 366 bytes | 366.00 KiB / s , done . Total 3 ( delta 1 ) , reused 0 ( delta 0 ) , pack - reused 0 remote : Resolving deltas : 100 % ( 1 / 1 ) , completed with 1 local object . To https : //github.com/collectivecloudperu/reloj-numerico-javascript.git    65006a0..08c3d2f    main -> main Como yo solo hice unos cambios en el archivo index.html del proyecto, si voy al repositorio remoto en GitHub, puedo ver que solo hubo cambios en ese archivo y el archivo test.rar no se subió. Bien ahora pasemos a otro caso sobre los mensajes de confirmación mal escritos. Deshaciendo Localmente Commits con Mensajes de confirmación mal escritos Luego de hacer mi último commit en mi repositorio local, puede pasar que escribí mal una palabra en mi mensaje de confirmación o commit, por ejemplo escribí la palabra “Cabios” en lugar de la palabra “Cambios” , no es demasiado tarde ya que puedo usar el comando git commit con la flag o bandera –amend , es decir el comando quedaría así git commit –amend -m “Cambios” 1 2 3 4 5 6 7 8 9 10 11 12 13 14 // Palabra 'Cambios' mal escrita git commit - m "Cabios" [ main 3d88eef ] Cabios 2 files changed , 1 insertion ( + ) , 1 deletion ( - ) create mode 100644 test . rar // Palabra 'Cambios' corregida git commit -- amend - m "Cambios" [ main 663c8d1 ] Cambios Date : Sun Apr 18 23 : 41 : 21 2021 - 0500 2 files changed , 1 insertion ( + ) , 1 deletion ( - ) create mode 100644 test . rar Entonces si hago todos los pasos correspondientes para subir los cambios (suponiendo que hice cambios solamente en el archivo index.html ) al repositorio remoto, puedo ver en GitHub que el texto o palabra Cambios aparece correctamente. Ahora pasemos a ver otro caos referente a cambios al último commit Deshaciendo Localmente Commits para Agregar cambios al último commit Supongamos que tenemos un commit que aún no se ha enviado y nos damos cuenta que se necesitan hacer cambios adicionales. Para solucionar esto, primero debemos agregar los archivos modificados al área de preparación mediante el comando git add seguido del nombredelarchivo . Por ejemplo tengo un archivo llamado test.txt el cual quiero agregar a mi commit a último momento 1 2 3 4 5 6 7 8 / reloj - numerico - javascript    ├── / css    ├── / js    ├── index . html    ├── README . md    ├── test . txt // Agregue este archivo a ultimo momento Antes de que el archivo test.txt fuese creado yo ejecute el primer comando que sirve para preparar los cambios, es decir el comando git add . y luego que agregue el archivo test.txt , entonces allí debo de ejecutar el comando git add test.txt para incluirlo en el commit. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 // Preparo los archivos git add . // Agrego el archivo que fue creado a último momento git add test . txt // Preparo el Commit git commit - m "Cambios" [ main 5eb3c4c ] Cambios 1 file changed , 0 insertions ( + ) , 0 deletions ( - ) create mode 100644 test . txt // Subo los cambios al repositorio remoto (GitHub) git push Enumerating objects : 4 , done . Counting objects : 100 % ( 4 / 4 ) , done . Delta compression using up to 8 threads Compressing objects : 100 % ( 2 / 2 ) , done . Writing objects : 100 % ( 3 / 3 ) , 266 bytes | 266.00 KiB / s , done . Total 3 ( delta 1 ) , reused 1 ( delta 0 ) , pack - reused 0 remote : Resolving deltas : 100 % ( 1 / 1 ) , completed with 1 local object . To https : //github.com/collectivecloudperu/reloj-numerico-javascript.git    e05abff . . 5eb3c4c    main -> main Entonces si voy a mi repositorio remoto en GitHub, puedo ver que se ha incluido el archivo test.txt sin problemas. Bueno hasta aquí terminamos con la primera parte de este Post en donde aprendimos a deshacer commits de manera local. Ten Paciencia, lo que quiero es que conozcas bien como deshacer commits y no llenarte el capitulo de mucho contenido porque te puedes marear y no tendrás un óptimo aprendizaje.  Nota (s) En la siguiente parte y última, vamos a deshacer commits de repositorios remotos. No olvides que debemos usar la Tecnología para hacer cosas Buenas por el Mundo.  Síguenos en nuestras Redes Sociales para que no te pierdas nuestros próximos contenidos.
Markdown
- [Backend](https://blog.nubecolectiva.com/category/backend/) - [API REST](https://blog.nubecolectiva.com/category/backend/api-rest/) - [GraphQL](https://blog.nubecolectiva.com/category/bases-de-datos/graphql/) - [Bases de Datos](https://blog.nubecolectiva.com/category/bases-de-datos/) - [Apache Cassandra](https://blog.nubecolectiva.com/category/bases-de-datos/apache-cassandra/) - [MariaDB](https://nubecolectiva.com/blog/category/bases-de-datos/mariadb/) - [MongoDB](https://blog.nubecolectiva.com/category/mongo-db/) - [MySQL](https://blog.nubecolectiva.com/category/bases-de-datos/mysql/) - [OracleDB](https://blog.nubecolectiva.com/category/bases-de-datos/oracle-db/) - [PostgreSQL](https://blog.nubecolectiva.com/category/bases-de-datos/postgresql/) - [Redis](https://blog.nubecolectiva.com/category/bases-de-datos/redis/) - [SQL](https://blog.nubecolectiva.com/category/bases-de-datos/sql/) - [SQLite](https://blog.nubecolectiva.com/category/bases-de-datos/sqlite/) - [MS SQL Server](https://blog.nubecolectiva.com/category/bases-de-datos/ms-sql-server/) - [C\#](https://blog.nubecolectiva.com/category/backend/c/) - [Dart](https://blog.nubecolectiva.com/category/dart/) - [Django](https://blog.nubecolectiva.com/category/backend/django/) - [Tutoriales de Go](https://blog.nubecolectiva.com/category/backend/tutoriales-go/) - [Gin](https://blog.nubecolectiva.com/category/backend/gin/) - [Java](https://blog.nubecolectiva.com/category/java/) - [Laravel](https://blog.nubecolectiva.com/category/backend/laravel/) - [Node JS](https://blog.nubecolectiva.com/category/backend/node-js/) - [PHP](https://blog.nubecolectiva.com/category/backend/php/) - [Python](https://blog.nubecolectiva.com/category/backend/python/) - [Ruby](https://blog.nubecolectiva.com/category/backend/ruby/) - [Ruby on Rails](https://blog.nubecolectiva.com/category/backend/ruby-on-rails/) - [Rust](https://blog.nubecolectiva.com/category/backend/rust/) - [Spring](https://blog.nubecolectiva.com/category/backend/spring/) - [Frontend](https://blog.nubecolectiva.com/category/frontend/) - [Angular](https://blog.nubecolectiva.com/category/frontend/angular-js/) - [Axios](https://blog.nubecolectiva.com/category/frontend/axios/) - [Bootstrap](https://blog.nubecolectiva.com/category/frontend/bootstrap/) - [CSS](https://blog.nubecolectiva.com/category/frontend/css/) - [Flutter](https://blog.nubecolectiva.com/category/flutter/) - [HTML](https://blog.nubecolectiva.com/category/frontend/html/) - [JavaScript](https://blog.nubecolectiva.com/category/frontend/javascript/) - [Material Design](https://blog.nubecolectiva.com/category/frontend/material-design/) - [Micro Frontends](https://blog.nubecolectiva.com/category/frontend/micro-frontends/) - [jQuery](https://blog.nubecolectiva.com/category/frontend/jquery/) - [React JS](https://blog.nubecolectiva.com/category/frontend/react-js/) - [Svelte](https://blog.nubecolectiva.com/category/frontend/svelte/) - [Tailwind CSS](https://blog.nubecolectiva.com/category/frontend/tailwind-css/) - [TypeScript](https://blog.nubecolectiva.com/category/frontend/typescript/) - [Vite JS](https://blog.nubecolectiva.com/category/frontend/vite-js/) - [Vue JS](https://blog.nubecolectiva.com/category/frontend/vue-js/) - [Móvil](https://blog.nubecolectiva.com/category/movil/) - [Android](https://blog.nubecolectiva.com/category/movil/android/) - [Android Studio](https://blog.nubecolectiva.com/category/movil/android-studio/) - [Kotlin](https://blog.nubecolectiva.com/category/movil/android/kotlin/) - [Ionic](https://blog.nubecolectiva.com/category/movil/ionic/) - [iOS](https://blog.nubecolectiva.com/category/movil/ios/) - [Swift](https://blog.nubecolectiva.com/category/movil/ios/swift/) - [React Native](https://blog.nubecolectiva.com/category/movil/react-native/) - [Digital](https://blog.nubecolectiva.com/category/marketing-digital/) - [Marketing Digital](https://blog.nubecolectiva.com/category/marketing-digital/) - [Social Media](https://blog.nubecolectiva.com/category/social-media/) - [UI](https://blog.nubecolectiva.com/category/ui/) - [Unicode](https://blog.nubecolectiva.com/category/unicode/) - [UX](https://blog.nubecolectiva.com/category/ux/) - [WordPress](https://blog.nubecolectiva.com/category/wordpress/) - [Más +](https://blog.nubecolectiva.com/category/articulos/) - [Artículos](https://blog.nubecolectiva.com/category/articulos/) - [Blockchain](https://blog.nubecolectiva.com/category/articulos/blockchain/) - [Ciberseguridad](https://blog.nubecolectiva.com/category/ciberseguridad/) - [Hacking Ético](https://blog.nubecolectiva.com/category/hacking-etico/) - [Pentesting](https://blog.nubecolectiva.com/category/pentesting/) - [Seguridad](https://blog.nubecolectiva.com/category/seguridad/) - [Data Science](https://blog.nubecolectiva.com/category/data-science/) - [Devs](https://blog.nubecolectiva.com/category/devs/) - [Agile](https://blog.nubecolectiva.com/category/devs/agile/) - [APIs](https://blog.nubecolectiva.com/category/apis/) - [Arduino](https://blog.nubecolectiva.com/category/arduino/) - [Arq. Software](https://blog.nubecolectiva.com/category/arquitectura-de-software/) - [CDNs](https://blog.nubecolectiva.com/category/cdns/) - [Chrome Dev Tools](https://blog.nubecolectiva.com/category/articulos/dev-tools-google-chrome/) - [Cloud Computing](https://blog.nubecolectiva.com/category/cloud-computing/) - [DApps](https://blog.nubecolectiva.com/category/dapps/) - [DevOps](https://blog.nubecolectiva.com/category/devops/) - [Docker](https://blog.nubecolectiva.com/category/docker/) - [Editores de Código](https://blog.nubecolectiva.com/category/devs/editores-de-codigo/) - [Experimental](https://blog.nubecolectiva.com/category/experimental/) - [GitOps](https://blog.nubecolectiva.com/category/gitops/) - [JAMStack](https://blog.nubecolectiva.com/category/jamstack/) - [Kubernetes](https://blog.nubecolectiva.com/category/kubernetes/) - [NFT](https://blog.nubecolectiva.com/category/nft/) - [Raspberry Pi](https://blog.nubecolectiva.com/category/raspberry-pi/) - [Socket IO](https://blog.nubecolectiva.com/category/articulos/socket-io/) - [Testing](https://blog.nubecolectiva.com/category/testing/) - [Web 3.0](https://blog.nubecolectiva.com/category/web-3-0/) - [Eventos Dev](https://blog.nubecolectiva.com/category/eventos-dev/) - [Apple WWDC](https://blog.nubecolectiva.com/category/eventos-dev/apple-wwdc/) - [Google IO](https://blog.nubecolectiva.com/category/eventos-dev/google-io/) - [Firebase](https://blog.nubecolectiva.com/category/firebase/) - [Game Dev](https://blog.nubecolectiva.com/category/game-dev/) - [Unity](https://blog.nubecolectiva.com/category/game-dev/unity/) - [Git](https://blog.nubecolectiva.com/category/articulos/git/) - [GitHub](https://blog.nubecolectiva.com/category/articulos/github/) - [Tendencia GitHub](https://blog.nubecolectiva.com/category/articulos/github/tendencias-github/) - [Inteligencia Artificial](https://blog.nubecolectiva.com/category/inteligencia-artificial/) - [Linux](https://blog.nubecolectiva.com/category/linux/) - [Machine Learning](https://blog.nubecolectiva.com/category/machine-learning/) - [News](https://blog.nubecolectiva.com/category/news/) - [Rankings / Tops](https://blog.nubecolectiva.com/category/rankings-tops/) - [Ranking BD](https://blog.nubecolectiva.com/category/bases-de-datos/ranking-bd/) - [Ranking Lenguajes](https://blog.nubecolectiva.com/category/ranking-lenguajes-de-programacion/) - [Stack Overflow](https://blog.nubecolectiva.com/category/articulos/stack-overflow/) - [Tendencias GitHub](https://blog.nubecolectiva.com/category/articulos/github/tendencias-github/) - [Recursos](https://blog.nubecolectiva.com/category/articulos/recursos/) - [SEO](https://blog.nubecolectiva.com/category/seo/) - [Servidores](https://blog.nubecolectiva.com/category/servidores/) - [VPS](https://blog.nubecolectiva.com/category/servidores/vps/) - [Tecnología](https://blog.nubecolectiva.com/category/tecnologia/) - [Tutoriales](https://blog.nubecolectiva.com/category/tutoriales/) - [Utilidades](https://blog.nubecolectiva.com/category/utilidades/) - [Accesorios Dev](https://blog.nubecolectiva.com/category/accesorios-dev/) - [Devs Hardware](https://blog.nubecolectiva.com/category/devs-hardware/) - [Anuncios](https://blog.nubecolectiva.com/category/anuncios/) - [Nosotros](https://nubecolectiva.com/) - [¿Quiénes Somos?](https://nubecolectiva.com/nosotros/) - [Contacto](https://nubecolectiva.com/contacto/) - [Cursos (GRATIS)](https://nubecolectiva.com/cursos) - [Testimonios](https://nubecolectiva.com/testimonios/ "Lo que dicen los usuarios sobre nuestros contenidos y productos.") - [Nos Mencionan](https://blog.nubecolectiva.com/nos-mencionan/ "Lo que dicen los usuarios sobre nuestros contenidos y productos.") Buscar [Donar](https://nubecolectiva.com/donaciones/ "Donar") [![Logo Fantasticoo](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Logo Fantasticoo](https://fantasticoo.com/wp-content/uploads/2023/11/favicon.png)](https://fantasticoo.com/ "Explora más, aprende más") . ![Notificaciones](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDIwIDIwIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==) ![Notificaciones](https://nubecolectiva.com/img/icono.png) [![Logo Nube Colectiva](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=)![Logo Nube Colectiva](https://nubecolectiva.com/img/logo.png)](https://blog.nubecolectiva.com/) [Categorías](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/) - - [Programación](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/) - [Python](https://nubecolectiva.com/blog/category/backend/python/) - [JavaScript](https://nubecolectiva.com/blog/category/frontend/javascript/) - [PHP](https://nubecolectiva.com/blog/category/backend/php/) - [Programación Orientada a Objetos (POO)](https://nubecolectiva.com/?s=poo) - [Desarrollo](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/) - [Aplicaciones Móviles](https://nubecolectiva.com/blog/category/movil/) - [APIs](https://nubecolectiva.com/blog/category/apis/) - [Visual Studio Code](https://nubecolectiva.com/?s=visual+studio+code) - [Buenas Prácticas](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/) - [Inteligencia Artificial y Ciencia de Datos](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/) - [Data Science (Ciencia de Datos)](https://nubecolectiva.com/blog/category/data-science/) - [ChatGPT](https://nubecolectiva.com/blog/category/inteligencia-artificial/chatgpt/) - [Claude AI](https://nubecolectiva.com/blog/category/inteligencia-artificial/claude-ai/) - [GitHub Copilot](https://nubecolectiva.com/blog/category/inteligencia-artificial/github-copilot/) - [DeepSeek](https://nubecolectiva.com/blog/category/inteligencia-artificial/deepseek/) - [Gemini AI](https://nubecolectiva.com/blog/category/inteligencia-artificial/gemini-ai/) - [Grok AI](https://nubecolectiva.com/blog/category/inteligencia-artificial/grok-ai/) - [Machine Learning](https://nubecolectiva.com/blog/category/machine-learning/) - [MCP (Model Context Protocol)](https://nubecolectiva.com/blog/category/inteligencia-artificial/mcp/) - [Ciberseguridad](https://nubecolectiva.com/blog/category/ciberseguridad/) - [Pentesting](https://nubecolectiva.com/blog/category/pentesting/) - [Hacking Ético](https://nubecolectiva.com/blog/category/ciberseguridad/hacking-etico/) - [Herramientas](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/) - [Blockchain y NFT](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/) - [Web 3.0](https://nubecolectiva.com/blog/category/web-3-0/) - [NFT](https://nubecolectiva.com/blog/category/nft/) - [Blockchain](https://nubecolectiva.com/blog/category/articulos/blockchain/) - [Diseño y SEO](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/) - [UX](https://nubecolectiva.com/blog/category/ux/) - [UI](https://nubecolectiva.com/blog/category/ui/) - [SEO Técnico](https://nubecolectiva.com/blog/category/seo/) - [Accesibilidad](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/) - [Tendencias y Herramientas](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/) - [Noticias Tecnológicas](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/) - [Comparativas y Análisis](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/) - [Herramientas para Devs](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/) 1. [Home](https://nubecolectiva.com/) » [Git](https://nubecolectiva.com/blog/category/articulos/git/) » **Como Deshacer Commits en Git (Forma Local y Remota) – Parte 1** # Como Deshacer Commits en Git (Forma Local y Remota) – Parte 1 ![](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgdmlld0JveD0iMCAwIDMyIDMyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==) ![](https://nubecolectiva.com/img/clock.png) 6 minuto(s) En esta página: - [Partes](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/#toc-1) - [Deshaciendo Commits](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/#toc-2) - [Deshaciendo Localmente Commits para evitar Archivos no deseados](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/#toc-3) - [Deshaciendo Localmente Commits con Mensajes de confirmación mal escritos](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/#toc-4) - [Deshaciendo Localmente Commits para Agregar cambios al último commit](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/#toc-5) - [Nota (s)](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/#toc-6) En la industria actual hay muchos desarrolladores y equipos de trabajo que suelen usar Git y GitHub para gestionar los repositorios de sus proyectos. Git es el sistema de control de versiones (VCS) más popular del mundo actualmente, nos permite hacer un seguimiento de los cambios de archivos basados en texto. Pero a veces como seres humanos podemos cometer errores a la hora de subir cambios a GitHub, en este Post te enseñare como deshacer estos cambios o commits antes de ser enviados, vamos con ello. ## Partes - Parte 1 - [Parte 2](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota-parte-2-final/) (Final) [![](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=)![](https://nubecolectiva.com/wp-content/uploads/2021/04/j1.jpg)](https://nubecolectiva.com/wp-content/uploads/2021/04/j1.jpg) Antes de continuar, te invito a leer los siguientes artículos para que estés familiarizado con este tutorial: - [Que es Git, como utilizarlo y otros detalles](https://nubecolectiva.com/blog/que-es-git-como-utilizarlo-y-otros-detalles/) - [Conceptos y Técnicas de Git que debes saber antes de unirte a un Equipo de Git – Parte 1](https://nubecolectiva.com/blog/conceptos-y-tecnicas-de-git-que-debes-saber-antes-de-unirte-a-un-equipo-de-git-parte-1/) - [Que son las Ramas (Branches) en Git, como utilizarlas y otros detalles](https://nubecolectiva.com/blog/que-son-las-ramas-branches-en-git-como-utilizarlas-y-otros-detalles/) - [Como usar la versión GUI de Git (No Consola GitBash)](https://nubecolectiva.com/blog/como-usar-la-version-gui-de-git-no-consola-gitbash/) - Puedes leer más en la [categoría Git](https://nubecolectiva.com/blog/category/articulos/git/) Asimismo te invito a escuchar el **Podcast**: “*5 Consejos para ser un Programador más Productivo*” (No son los clásicos consejos técnicos de programación, si no de rutinas y buenos hábitos cotidianos): | | | | |---|---|---| | **Spotify:** | **Sound Cloud:** | **Apple Podcasts** | | [![](https://nubecolectiva.com/wp-content/uploads/2020/04/podcast_post_blog_a-1.jpg)](https://open.spotify.com/episode/6qN4nZ62ypXus6v6nqjWtu) | [![](https://nubecolectiva.com/wp-content/uploads/2020/04/podcast_post_blog_b.jpg)](https://soundcloud.com/nube-colectiva/2-5-consejos-para-ser-un-programador-mas-productivo) | [![](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=)![](https://nubecolectiva.com/wp-content/uploads/2020/10/pod2ap.jpg)](https://podcasts.apple.com/pe/podcast/2-5-consejos-para-ser-un-programador-m%C3%A1s-productivo/id1532848819?i=1000492079279) | Bien ahora continuemos con el Post: Como Deshacer Commits en Git (Forma Local y Remota) – Parte 1. Para este Post haré uso de [este repositorio](https://github.com/collectivecloudperu/reloj-numerico-javascript) el cual pertenece al tutorial llamado [Como Crear un Reloj Digital (Numérico) con JavaScript](https://nubecolectiva.com/blog/como-crear-un-reloj-digital-numerico-con-javascript/). <https://nubecolectiva.com/blog/como-crear-un-reloj-digital-numerico-con-javascript/> Bueno ahora pasemos a realizar operaciones en el repositorio. ## Deshaciendo Commits Los commits de Git más fáciles de deshacer son los que aún no han sido enviando a un repositorio remoto como GitHub, Bitbucket, etc. Como usuario propietario, eres libre de hacer cualquier cosa en tu repositorio local. Pero cuando se trata de editar un historial de commits que se envían a un repositorio remoto, que por cierto pueden ser usados públicamente una ves que se encuentran en línea. Esto significa que estamos poniendo en peligro el trabajo de otros desarrolladores al destruir el historia de git que ya está en uso. Por ello vamos a ver casos de como deshacer commits local y remotamente. En esta primera parte vamos a ver casos de manera local. ### Deshaciendo Localmente Commits para evitar Archivos no deseados Supongamos que estoy a punto de realizar un commit en mi repositorio local, haciendo uso del comando **git add .** o **git add –all** los cuales agregan todos los cambios de archivo al área de preparación en el repositorio. A veces podemos olvidar que algunos archivos no están relacionados con ese commit y no deberíamos de incluirlos. Por suerte no es demasiado tarde, ya que podemos hacer uso del comando **git reset** agregando el **nombredelarchivo** que no queremos incluir. Por ejemplo si en mi repositorio local en la PC tengo un archivo llamado **test.rar** y ese archivo no forma parte del proyecto y no lo quiero incluir. /reloj-numerico-javascript ├── /css ├── /js ├── index.html ├── README.md ├── test.rar // Omitir este Archivo | | | |---|---| | 1 2 3 4 5 6 7 8 | /reloj\-numerico\-javascript ├── /css ├── /js ├── index.html ├── README.md ├── test.rar // Omitir este Archivo | Puedo hacer los pasos correspondientes para subir cambios a mi repositorio remoto, pero luego de ejecutar el comando **git add .** debo de escribir el comando **git reset test.rar** para no incluir ese archivo y luego continuar con los pasos respectivos para subir los cambios. // Preparo los archivos git add . // No incluir el archivo test.rar git reset test.rar // Preparar el Commit git commit -m "Cambios" \[main 08c3d2f\] Cambios 1 file changed, 1 insertion(+), 1 deletion(-) // Subir los cambios al repositorio remoto (GitHub) git push Enumerating objects: 5, done. Counting objects: 100% (5/5), done. Delta compression using up to 8 threads Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 366 bytes \| 366.00 KiB/s, done. Total 3 (delta 1), reused 0 (delta 0), pack-reused 0 remote: Resolving deltas: 100% (1/1), completed with 1 local object. To https://github.com/collectivecloudperu/reloj-numerico-javascript.git 65006a0..08c3d2f main -\> main | | | |---|---| | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | // Preparo los archivos git add . // No incluir el archivo test.rar git reset test.rar // Preparar el Commit git commit \-m "Cambios" \[main 08c3d2f\] Cambios 1 file changed, 1 insertion(\+), 1 deletion(\-) // Subir los cambios al repositorio remoto (GitHub) git push Enumerating objects: 5, done. Counting objects: 100% (5/5), done. Delta compression using up to 8 threads Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 366 bytes \| 366\.00 KiB/s, done. Total 3 (delta 1), reused 0 (delta 0), pack\-reused 0 remote: Resolving deltas: 100% (1/1), completed with 1 local object. To https://github.com/collectivecloudperu/reloj-numerico-javascript.git 65006a0..08c3d2f main \-\> main | Como yo solo hice unos cambios en el archivo **index.html** del proyecto, si voy al repositorio remoto en GitHub, puedo ver que solo hubo cambios en ese archivo y el archivo **test.rar** no se subió. [![](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=)![](https://nubecolectiva.com/wp-content/uploads/2021/04/j2.jpg)](https://nubecolectiva.com/wp-content/uploads/2021/04/j2.jpg) Bien ahora pasemos a otro caso sobre los mensajes de confirmación mal escritos. ### Deshaciendo Localmente Commits con Mensajes de confirmación mal escritos Luego de hacer mi último commit en mi repositorio local, puede pasar que escribí mal una palabra en mi mensaje de confirmación o commit, por ejemplo escribí la palabra *“Cabios”* en lugar de la palabra *“Cambios”*, no es demasiado tarde ya que puedo usar el comando **git commit** con la flag o bandera **–amend**, es decir el comando quedaría así **git commit –amend -m “Cambios”** // Palabra 'Cambios' mal escrita git commit -m "Cabios" \[main 3d88eef\] Cabios 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 test.rar // Palabra 'Cambios' corregida git commit --amend -m "Cambios" \[main 663c8d1\] Cambios Date: Sun Apr 18 23:41:21 2021 -0500 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 test.rar | | | |---|---| | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 | // Palabra 'Cambios' mal escrita git commit \-m "Cabios" \[main 3d88eef\] Cabios 2 files changed, 1 insertion(\+), 1 deletion(\-) create mode 100644 test.rar // Palabra 'Cambios' corregida git commit \--amend \-m "Cambios" \[main 663c8d1\] Cambios Date: Sun Apr 18 23:41:21 2021 \-0500 2 files changed, 1 insertion(\+), 1 deletion(\-) create mode 100644 test.rar | Entonces si hago todos los pasos correspondientes para subir los cambios (suponiendo que hice cambios solamente en el archivo **index.html**) al repositorio remoto, puedo ver en GitHub que el texto o palabra *Cambios* aparece correctamente. [![](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=)![](https://nubecolectiva.com/wp-content/uploads/2021/04/edit_j3.jpg)](https://nubecolectiva.com/wp-content/uploads/2021/04/edit_j3.jpg) Ahora pasemos a ver otro caos referente a cambios al último commit ### Deshaciendo Localmente Commits para Agregar cambios al último commit Supongamos que tenemos un commit que aún no se ha enviado y nos damos cuenta que se necesitan hacer cambios adicionales. Para solucionar esto, primero debemos agregar los archivos modificados al área de preparación mediante el comando **git add** seguido del **nombredelarchivo**. Por ejemplo tengo un archivo llamado **test.txt** el cual quiero agregar a mi commit a último momento /reloj-numerico-javascript ├── /css ├── /js ├── index.html ├── README.md ├── test.txt // Agregue este archivo a ultimo momento | | | |---|---| | 1 2 3 4 5 6 7 8 | /reloj\-numerico\-javascript ├── /css ├── /js ├── index.html ├── README.md ├── test.txt // Agregue este archivo a ultimo momento | Antes de que el archivo **test.txt** fuese creado yo ejecute el primer comando que sirve para preparar los cambios, es decir el comando **git add .** y luego que agregue el archivo **test.txt**, entonces allí debo de ejecutar el comando **git add test.txt** para incluirlo en el commit. // Preparo los archivos git add . // Agrego el archivo que fue creado a último momento git add test.txt // Preparo el Commit git commit -m "Cambios" \[main 5eb3c4c\] Cambios 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 test.txt // Subo los cambios al repositorio remoto (GitHub) git push Enumerating objects: 4, done. Counting objects: 100% (4/4), done. Delta compression using up to 8 threads Compressing objects: 100% (2/2), done. Writing objects: 100% (3/3), 266 bytes \| 266.00 KiB/s, done. Total 3 (delta 1), reused 1 (delta 0), pack-reused 0 remote: Resolving deltas: 100% (1/1), completed with 1 local object. To https://github.com/collectivecloudperu/reloj-numerico-javascript.git e05abff..5eb3c4c main -\> main | | | |---|---| | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | // Preparo los archivos git add . // Agrego el archivo que fue creado a último momento git add test.txt // Preparo el Commit git commit \-m "Cambios" \[main 5eb3c4c\] Cambios 1 file changed, 0 insertions(\+), 0 deletions(\-) create mode 100644 test.txt // Subo los cambios al repositorio remoto (GitHub) git push Enumerating objects: 4, done. Counting objects: 100% (4/4), done. Delta compression using up to 8 threads Compressing objects: 100% (2/2), done. Writing objects: 100% (3/3), 266 bytes \| 266\.00 KiB/s, done. Total 3 (delta 1), reused 1 (delta 0), pack\-reused 0 remote: Resolving deltas: 100% (1/1), completed with 1 local object. To https://github.com/collectivecloudperu/reloj-numerico-javascript.git e05abff..5eb3c4c main \-\> main | Entonces si voy a mi repositorio remoto en GitHub, puedo ver que se ha incluido el archivo **test.txt** sin problemas. [![](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=)![](https://nubecolectiva.com/wp-content/uploads/2021/04/j4.jpg)](https://nubecolectiva.com/wp-content/uploads/2021/04/j4.jpg) Bueno hasta aquí terminamos con la primera parte de este Post en donde aprendimos a deshacer commits de manera local. **Ten Paciencia, lo que quiero es que** conozcas bien como deshacer commits y no llenarte el capitulo de mucho contenido porque te puedes marear y no tendrás un óptimo aprendizaje. ## Nota (s) - En la siguiente parte y última, vamos a deshacer commits de repositorios remotos. - No olvides que debemos usar la Tecnología para hacer cosas Buenas por el Mundo. Síguenos en nuestras Redes Sociales para que no te pierdas nuestros próximos contenidos. [Git](https://nubecolectiva.com/blog/category/articulos/git/) 18-04-2021 18-04-2021 [Crear un Post](https://comunidad.nubecolectiva.com/colaborador) – [Eventos Devs](https://comunidad.nubecolectiva.com/eventos) – [Foro](https://comunidad.nubecolectiva.com/foro) ## Sobre el Autor ![Juan Castro](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=) ![Juan Castro](https://nubecolectiva.com/wp-content/uploads/2025/06/juan-castro.webp) **Juan Castro** — Ingeniero de Software con más de 17 años de experiencia en desarrollo, ia, ml, devops, data science, ciberseguridad y tecnología. **Certificados oficiales:** [![Certificado Microsoft Azure Fundamentals](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=)![Certificado Microsoft Azure Fundamentals](https://nubecolectiva.com/wp-content/uploads/2025/06/certificado-microsoft-azure-fundamentals.webp)](https://drive.google.com/file/d/1_sjabUKy1jVuknibnvPF-NFxWjxXe5xr/view?usp=sharing "Certificado Microsoft Azure Fundamentals") [![Certificado AWS Designing Event-Driven Architectures](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=)![Certificado AWS Designing Event-Driven Architectures](https://nubecolectiva.com/wp-content/uploads/2025/06/certificado-aws-designing-event-driven-architectures.webp)](https://drive.google.com/file/d/1v3T1vSn2a6y-G0V6vuZlo1MjM2oQ7XtX/view?usp=sharing "Certificado AWS Designing Event-Driven Architectures") [![Certificado Google Desarrollo de Aplicaciones Móviles](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=)![Certificado Google Desarrollo de Aplicaciones Móviles](https://nubecolectiva.com/wp-content/uploads/2025/06/certificado-google-desarrollo-de-aplicaciones-moviles.webp)](https://drive.google.com/file/d/1Wq4QbqDCKvXscmdHamL9MO8-U40YDiHh/view?usp=sharing "Certificado Google Desarrollo de Aplicaciones Móviles") [Ver más](https://nubecolectiva.com/blog/autor/juan-castro/) [Como Deshacer Commits en Git](https://nubecolectiva.com/blog/tag/como-deshacer-commits-en-git/) [Git](https://nubecolectiva.com/blog/tag/git/) [GitHub](https://nubecolectiva.com/blog/tag/github/) Newsletter [Siguiente Post](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota-parte-2-final/) [Post Anterior](https://nubecolectiva.com/blog/como-agregar-un-numero-de-movil-para-hacer-pruebas-en-firebase-authentication-validacion-sms/) ## Sobre el Autor ![Juan Castro](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=) ![Juan Castro](https://nubecolectiva.com/wp-content/uploads/2025/06/juan-castro.webp) **Juan Castro** — Ingeniero de Software con más de 17 años de experiencia en desarrollo, ia, ml, devops, data science, ciberseguridad y tecnología. **Certificados oficiales:** [![Certificado Microsoft Azure Fundamentals](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=)![Certificado Microsoft Azure Fundamentals](https://nubecolectiva.com/wp-content/uploads/2025/06/certificado-microsoft-azure-fundamentals.webp)](https://drive.google.com/file/d/1_sjabUKy1jVuknibnvPF-NFxWjxXe5xr/view?usp=sharing "Certificado Microsoft Azure Fundamentals") [![Certificado AWS Designing Event-Driven Architectures](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=)![Certificado AWS Designing Event-Driven Architectures](https://nubecolectiva.com/wp-content/uploads/2025/06/certificado-aws-designing-event-driven-architectures.webp)](https://drive.google.com/file/d/1v3T1vSn2a6y-G0V6vuZlo1MjM2oQ7XtX/view?usp=sharing "Certificado AWS Designing Event-Driven Architectures") [![Certificado Google Desarrollo de Aplicaciones Móviles](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=)![Certificado Google Desarrollo de Aplicaciones Móviles](https://nubecolectiva.com/wp-content/uploads/2025/06/certificado-google-desarrollo-de-aplicaciones-moviles.webp)](https://drive.google.com/file/d/1Wq4QbqDCKvXscmdHamL9MO8-U40YDiHh/view?usp=sharing "Certificado Google Desarrollo de Aplicaciones Móviles") [Ver más](https://nubecolectiva.com/blog/autor/juan-castro/) ## \+ Artículos y Tutoriales - [Cómo usar Elementor en WordPress Paso a Paso](https://nubecolectiva.com/blog/como-usar-elementor-en-wordpress-paso-a-paso/) - [5 Empresas o Proyectos Que Usan Rust](https://nubecolectiva.com/blog/empresas-proyectos-usan-rust/) - [5 extensiones que te harán más Productivo en Sublime Text 3](https://nubecolectiva.com/blog/5-extensiones-que-te-haran-mas-productivo-en-sublime-text-3/) - [Lo que necesitas saber sobre Pokémon Go y dónde jugarlo en Lima](https://nubecolectiva.com/blog/lo-que-necesitas-saber-sobre-pokemon-go-y-donde-jugarlo-en-lima/) - [Las metas de Facebook en los próximos años que cambiarán el mundo.](https://nubecolectiva.com/blog/las-metas-de-facebook-en-los-proximos-anos-que-cambiaran-el-mundo/) ![IA](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0NSIgaGVpZ2h0PSIzMCIgdmlld0JveD0iMCAwIDQ1IDMwIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==) ![IA](https://nubecolectiva.com/img/logo.png) Preguntar Partners [![Logo de Cloudways](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=)![Logo de Cloudways](https://nubecolectiva.com/img/partners/cloudways.png)](https://nubecolectiva.com/vps_cw.php) [![Logo de la empresa Ionos](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=)![Logo de la empresa Ionos](https://nubecolectiva.com/img/partners/ionos.png)](https://nubecolectiva.com/vps_io.php) [![Logo de la empresa Namecheap](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=)![Logo de la empresa Namecheap](https://nubecolectiva.com/img/partners/namecheap.png)](https://nubecolectiva.com/vps_na.php) [![Logo de la empresa Kamatera](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=)![Logo de la empresa Kamatera](https://nubecolectiva.com/img/partners/kamatera.png)](https://nubecolectiva.com/vps_ka.php) [![Logo de Verpex](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=)![Logo de Verpex](https://nubecolectiva.com/img/partners/verpex.png)](https://nubecolectiva.com/vps_ve.php) [![Logo de Digital Ocean](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=)![Logo de Digital Ocean](https://nubecolectiva.com/img/partners/digital_ocean.png)](https://nubecolectiva.com/vps_do.php) Somos una empresa líder en soluciones digitales, ofreciendo servicios de Hosting, VPS y otros productos tecnológicos de alta calidad. Con más de 20 años de experiencia, nuestras soluciones son utilizadas por [grandes empresas y organizaciones](https://nubecolectiva.com/clientes/ "Ver los Clientes de Nube Colectiva"), que confían en nosotros por nuestra fiabilidad, rendimiento y soporte especializado. Descubre lo que dicen de nosotros: [Nos Mencionan](https://nubecolectiva.com/nos-mencionan/ "Lo que dicen los usuarios sobre nuestros contenidos y productos.") . [Subir](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/) Nube Colectiva © . Todos los Derechos Reservados. Utilizamos cookies para proporcionar y mejorar nuestros servicios. Al navegar por nuestro sitio, usted acepta las cookies. [Política de Cookies](https://nubecolectiva.com/politica-de-cookies/) \| [Política de Privacidad](https://nubecolectiva.com/politica-de-privacidad/) Gestionar consentimiento Para ofrecer las mejores experiencias, utilizamos tecnologías como las cookies para almacenar y/o acceder a la información del dispositivo. El consentimiento de estas tecnologías nos permitirá procesar datos como el comportamiento de navegación o las identificaciones únicas en este sitio. No consentir o retirar el consentimiento, puede afectar negativamente a ciertas características y funciones. Funcional Funcional Siempre activo El almacenamiento o acceso técnico es estrictamente necesario para el propósito legítimo de permitir el uso de un servicio específico explícitamente solicitado por el abonado o usuario, o con el único propósito de llevar a cabo la transmisión de una comunicación a través de una red de comunicaciones electrónicas. Preferencias Preferencias El almacenamiento o acceso técnico es necesario para la finalidad legítima de almacenar preferencias no solicitadas por el abonado o usuario. Estadísticas Estadísticas El almacenamiento o acceso técnico que es utilizado exclusivamente con fines estadísticos. El almacenamiento o acceso técnico que se utiliza exclusivamente con fines estadísticos anónimos. Sin un requerimiento, el cumplimiento voluntario por parte de tu Proveedor de servicios de Internet, o los registros adicionales de un tercero, la información almacenada o recuperada sólo para este propósito no se puede utilizar para identificarte. Marketing Marketing El almacenamiento o acceso técnico es necesario para crear perfiles de usuario para enviar publicidad, o para rastrear al usuario en una web o en varias web con fines de marketing similares. - [Administrar opciones](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/) - [Gestionar los servicios](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/) - [Gestionar {vendor\_count} proveedores](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/) - [Leer más sobre estos propósitos](https://cookiedatabase.org/tcf/purposes/) Aceptar Denegar Ver preferencias Guardar preferencias [Ver preferencias](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/) - [{title}](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/) - [{title}](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/) - [{title}](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/) Gestionar consentimiento ##### 🔔 Novedades en la Comunidad ###### Nuevo Cliente: Activision Blizzard - 25-11-2025 Demos la bienvenida a nuestro cliente **Activision Blizzard** [![Cliente Activision Blizzard](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2MDAiIGhlaWdodD0iMzUwIiB2aWV3Qm94PSIwIDAgNjAwIDM1MCI+PHJlY3Qgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgc3R5bGU9ImZpbGw6I2NmZDRkYjtmaWxsLW9wYWNpdHk6IDAuMTsiLz48L3N2Zz4=)![Cliente Activision Blizzard](https://nubecolectiva.com/wp-content/uploads/2025/11/cliente-activision-blizzard.webp)](https://nubecolectiva.com/clientes/) Puedes obtener más información en [nuestra página de clientes](https://nubecolectiva.com/clientes/ "Ver clientes"). *** ###### Altura de Entradas Corregida - 16-06-2025 Ahora las entradas del [Blog](https://nubecolectiva.com/blog/ "Visitar el blog de Nube Colectiva") muestra el mismo alto. ![Altura de Entradas Corregida](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5OTYiIGhlaWdodD0iMzAwIiB2aWV3Qm94PSIwIDAgOTk2IDMwMCI+PHJlY3Qgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgc3R5bGU9ImZpbGw6I2NmZDRkYjtmaWxsLW9wYWNpdHk6IDAuMTsiLz48L3N2Zz4=) ![Altura de Entradas Corregida](https://nubecolectiva.com/wp-content/uploads/2025/06/altura-entradas-corregida.jpg) También en las categorías, etiquetas, búsquedas y más. En versiones anteriores, se veian con alto disparejo. Seguimos trabajando en mejorar la comunidad. *** ###### Nuevos Clientes - 07-03-2025 Demos la bienvenida a los clientes: - J.K. Rowling - Fundación CRAM - Pangolia [![Cliente J.K. Rowling](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2MDAiIGhlaWdodD0iMzUwIiB2aWV3Qm94PSIwIDAgNjAwIDM1MCI+PHJlY3Qgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgc3R5bGU9ImZpbGw6I2NmZDRkYjtmaWxsLW9wYWNpdHk6IDAuMTsiLz48L3N2Zz4=)![Cliente J.K. Rowling](https://nubecolectiva.com/wp-content/uploads/2025/03/cliente-j-k-rowling.webp)](https://nubecolectiva.com/clientes/) Puedes obtener más información en [nuestra página de clientes](https://nubecolectiva.com/clientes/ "Ver clientes"). *** ###### Nuevo Curso GRATIS en Nube Colectiva ! - 08-12-2024 Hace unas semanas iniciamos el Curso de Ciberseguridad desde Cero GRATIS: [![Curso de Ciberseguridad desde Cero](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0NzciIGhlaWdodD0iMjkyIiB2aWV3Qm94PSIwIDAgNDc3IDI5MiI+PHJlY3Qgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgc3R5bGU9ImZpbGw6I2NmZDRkYjtmaWxsLW9wYWNpdHk6IDAuMTsiLz48L3N2Zz4=)![Curso de Ciberseguridad desde Cero](https://nubecolectiva.com/wp-content/uploads/2024/12/curso-de-ciberseguridad-desde-cero.jpg)](https://www.youtube.com/playlist?list=PLc7-e09KUrJGwS6bYxX0cyYCQsbu74oXs "Iniciar Curso GRATIS") Puedes encontrarlo [en este enlace](https://www.youtube.com/playlist?list=PLc7-e09KUrJGwS6bYxX0cyYCQsbu74oXs "Iniciar Curso GRATIS"). Aprovecha esta oportunidad y capacitate GRATIS para mejor como profesional. *** ###### Nueva Página Para los Apple Podcasts - 07-10-2024 La URL anterior de los los Apple Podcasts de Nube Colectiva ha sido retirada. Ahora los Apple Podcasts de Nube Colectiva los puedes encontrar en el siguiente enlace: <https://podcasts.apple.com/pe/podcast/nube-colectiva/id1532848819> También lo puedes encontrar en nuestra sección de iconos de Redes Sociales: ![Nueva Página Para los Apple Podcasts](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI3MTEiIGhlaWdodD0iNDQwIiB2aWV3Qm94PSIwIDAgNzExIDQ0MCI+PHJlY3Qgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgc3R5bGU9ImZpbGw6I2NmZDRkYjtmaWxsLW9wYWNpdHk6IDAuMTsiLz48L3N2Zz4=) ![Nueva Página Para los Apple Podcasts](https://nubecolectiva.com/wp-content/uploads/2024/10/nc07102024.png) Seguimos trabajando en mejorar la comunidad. *** ###### Nuevo Curso GRATIS en Nube Colectiva ! - 24-08-2024 Hemos iniciado el curso: **Curso de Ciencia de Datos con Python** Puedes encontrarlo [en este enlace](https://www.youtube.com/playlist?list=PLc7-e09KUrJGti7J_F1SKHoXLXaLC5UiA "Ingresar al curso (GRATIS)") o presionando la siguiente imagen: [![Curso de Ciencia de Datos con Python Gratis (80 Videos)](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0NzYiIGhlaWdodD0iMjg5IiB2aWV3Qm94PSIwIDAgNDc2IDI4OSI+PHJlY3Qgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgc3R5bGU9ImZpbGw6I2NmZDRkYjtmaWxsLW9wYWNpdHk6IDAuMTsiLz48L3N2Zz4=)![Curso de Ciencia de Datos con Python Gratis (80 Videos)](https://nubecolectiva.com/wp-content/uploads/2024/08/curso-de-ciencia-de-datos-con-python.jpg)](https://www.youtube.com/playlist?list=PLc7-e09KUrJGti7J_F1SKHoXLXaLC5UiA "Ingresar al curso (GRATIS)") Mucha suerte y nunca pares de aprender. *** ###### Nuevos Clientes - 01-08-2024 Los siguiente clientes están usando nuestros productos y servicios: - jQuery - Shimano LATAM - Estado de California (EE.UU.) Puedes encontrarlos en [nuestra sección de clientes](https://nubecolectiva.com/clientes/ "Ver clientes"). *** ###### Aviso a la Comunidad - 10-07-2024 ![Aviso a la Comunidad](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2MDAiIGhlaWdodD0iNjAwIiB2aWV3Qm94PSIwIDAgNjAwIDYwMCI+PHJlY3Qgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgc3R5bGU9ImZpbGw6I2NmZDRkYjtmaWxsLW9wYWNpdHk6IDAuMTsiLz48L3N2Zz4=) ![Aviso a la Comunidad](https://nubecolectiva.com/wp-content/uploads/2024/07/acnc.jpg) *** ###### Publicamos Nuestro Pastebin - 30-06-2024 Nuestra [cuenta de Pastebin](https://pastebin.com/u/NubeColectiva "Visitar la cuenta de Pastebin de Nube Colectiva") ha sido compartida en Nube Colectiva: ![Pastebin de Nube Colectiva](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2OTMiIGhlaWdodD0iNjA0IiB2aWV3Qm94PSIwIDAgNjkzIDYwNCI+PHJlY3Qgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgc3R5bGU9ImZpbGw6I2NmZDRkYjtmaWxsLW9wYWNpdHk6IDAuMTsiLz48L3N2Zz4=) ![Pastebin de Nube Colectiva](https://nubecolectiva.com/wp-content/uploads/2024/06/pastebin-de-nube-colectiva.jpg) Seguimos trabajando las 24 horas del día para brindarte la mejor experiencia en la comunidad. *** ###### Canal de WhatsApp y Telegram Corregidos - 15-05-2024 Ahora puedes unirte y mirar el contenido gratis: - <https://whatsapp.com/channel/0029Va1TzpI72WU03eYrJv1g> (Canal de WhatsApp) - [https://t.me/+hI8z-OCJF-1kZjAx](https://t.me/+hI8z-OCJF-1kZjAx) (Canal de Telegram) También puedes encontrarlos en el botón **Social** del header: ![Canales de WhatsApp y Telegram en Nube Colectiva](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0MjMiIGhlaWdodD0iMjA1IiB2aWV3Qm94PSIwIDAgNDIzIDIwNSI+PHJlY3Qgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgc3R5bGU9ImZpbGw6I2NmZDRkYjtmaWxsLW9wYWNpdHk6IDAuMTsiLz48L3N2Zz4=) ![Canales de WhatsApp y Telegram en Nube Colectiva](https://nubecolectiva.com/wp-content/uploads/2024/05/canales-de-whatsapp-y-telegram-en-nube-colectiva.png) Seguimos trabajando las 24 horas para mejorar tu experiencia en la comunidad. *** ###### Podcasts Actualizados - 14-05-2024 El contenido de los siguientes Podcasts han sido actualizados: - <https://open.spotify.com/show/0IhovCtKYqQIHwvNRTvUhl> - <https://apple.co/32W9q7A> - <https://www.youtube.com/@NubeColectivaDevs/podcasts> (Reemplaza a Google Podcasts) Asimismo comenzarán a tener nuevos episodios gratis que te ayudarán a crecer como profesional. Trabajamos las 24 horas del día, para mejorar la comunidad. *** ###### Barra Horizontal de la Web Corregida en Móviles - 08-05-2024 Cuando un usuario visitaba nuestra página web desde su celular. Le aparecía una barra horizontal, impidiendo que la web se muestra en su vista natural: ![Web Nube Colectiva corregida en móviles](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI3MDAiIGhlaWdodD0iNjU5IiB2aWV3Qm94PSIwIDAgNzAwIDY1OSI+PHJlY3Qgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgc3R5bGU9ImZpbGw6I2NmZDRkYjtmaWxsLW9wYWNpdHk6IDAuMTsiLz48L3N2Zz4=) ![Web Nube Colectiva corregida en móviles](https://nubecolectiva.com/wp-content/uploads/2024/05/web-nube-colectiva-corregida-en-moviles.jpg) Hemos corregido el problema y ahora la web no muestra esa barra horizontal y se ve en su tamaño natural. Seguimos trabajando las 24 horas del día, para mejorar la comunidad. *** ###### Actualizaciones en las Redes Sociales - 17-04-2024 Hemos actualizado el icono de Instagram. También hemos agregado grupos de Skype para los que gustan usar esta herramienta de comunicación: ![Cambios en las redes sociales de la comunidad](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI3NTAiIGhlaWdodD0iNTc2IiB2aWV3Qm94PSIwIDAgNzUwIDU3NiI+PHJlY3Qgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgc3R5bGU9ImZpbGw6I2NmZDRkYjtmaWxsLW9wYWNpdHk6IDAuMTsiLz48L3N2Zz4=) ![Cambios en las redes sociales de la comunidad](https://nubecolectiva.com/wp-content/uploads/2024/04/cambios-en-las-redes-sociales-de-la-comunidad.jpg) Seguimos trabajando las 24 horas y 365 días del año para mejorar tu experiencia en la comunidad. *** ###### Comenzaron los Trabajos en la Página de Eventos ! - 09-04-2024 Para brindarte los mejores [eventos de programación y tecnología](https://nubecolectiva.com/comunidad/eventos/ "Ir a la página de Eventos de Nube Colectiva") \! [![](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI3OTEiIGhlaWdodD0iNTMwIiB2aWV3Qm94PSIwIDAgNzkxIDUzMCI+PHJlY3Qgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgc3R5bGU9ImZpbGw6I2NmZDRkYjtmaWxsLW9wYWNpdHk6IDAuMTsiLz48L3N2Zz4=)![](https://nubecolectiva.com/wp-content/uploads/2024/04/estamos-trabajando-en-la-pagina-de-eventos.png)](https://nubecolectiva.com/comunidad/eventos/) No olvides visitarla constantemente para encontrar nuevos eventos. *** ###### Tenemos Blue Skye (Red Social Descentralizada) - 05-04-2024 Usa tecnología Blockchain, por ende es segura: [![](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI3OTEiIGhlaWdodD0iNTMwIiB2aWV3Qm94PSIwIDAgNzkxIDUzMCI+PHJlY3Qgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgc3R5bGU9ImZpbGw6I2NmZDRkYjtmaWxsLW9wYWNpdHk6IDAuMTsiLz48L3N2Zz4=)![](https://nubecolectiva.com/wp-content/uploads/2024/04/tenemos-cuenta-en-blue-sky.png)](https://bsky.app/profile/nubecolectiva.bsky.social) Puedes seguirnos en [nuestra cuenta de Blue Sky](https://bsky.app/profile/nubecolectiva.bsky.social "Visitar la cuenta de Blue Sky de Nube Colectiva"), en donde compartimos contenido nuevo todos los días. *** ###### Estamos rediseñando la Web - 05-04-2024 Los cambios y nuevas páginas se irán viendo poco a poco [en nuestra web](https://nubecolectiva.com/ "Visitar la web de Nube Colectiva"): ![Estamos haciendo cambios en la web](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MDAiIGhlaWdodD0iNTAxIiB2aWV3Qm94PSIwIDAgOTAwIDUwMSI+PHJlY3Qgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgc3R5bGU9ImZpbGw6I2NmZDRkYjtmaWxsLW9wYWNpdHk6IDAuMTsiLz48L3N2Zz4=) ![Estamos haciendo cambios en la web](https://nubecolectiva.com/wp-content/uploads/2024/04/estamos-haciendo-cambios-en-la-web.png) Seguimos trabajando para brindarte le mejor experiencia en Nube Colectiva. *** Cerrar ##### Social ##### Redes Sociales (Developers) [![Blog](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Blog](https://nubecolectiva.com/wp-content/themes/nc/img/rs/blog.jpg)](https://nubecolectiva.com/blog "Blog") [![Facebook](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Facebook](https://nubecolectiva.com/wp-content/themes/nc/img/rs/fb.jpg)](https://www.facebook.com/CollectiveCloudPeru "Facebook") [![Grupo de Facebook](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Grupo de Facebook](https://nubecolectiva.com/wp-content/themes/nc/img/rs/fg.jpg)](https://www.facebook.com/groups/941935432611672/ "Grupo de Facebook") [![X (Twitter)](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![X (Twitter)](https://nubecolectiva.com/wp-content/themes/nc/img/rs/x.jpg)](https://twitter.com/collectivecperu "X (Twitter)") [![LinkedIn](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![LinkedIn](https://nubecolectiva.com/wp-content/themes/nc/img/rs/li.jpg)](https://www.linkedin.com/company/collectivecloudper%C3%BA "LinkedIn") [![YouTube](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![YouTube](https://nubecolectiva.com/wp-content/themes/nc/img/rs/yt.jpg)](https://www.youtube.com/channel/UCLUm5nYZ7rTv_xHPn30WVzg/videos "YouTube") [![Twitch](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Twitch](https://nubecolectiva.com/wp-content/themes/nc/img/rs/twc.jpg)](https://www.twitch.tv/nubecolectivadevs "Twitch") [![Instagram](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Instagram](https://nubecolectiva.com/wp-content/themes/nc/img/rs/ig.jpg)](https://www.instagram.com/nube.colectiva/ "Instagram") [![Pinterest](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Pinterest](https://nubecolectiva.com/wp-content/themes/nc/img/rs/pi.jpg)](https://www.pinterest.com/ncolectiva/ "Pinterest") [![GitHub](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![GitHub](https://nubecolectiva.com/wp-content/themes/nc/img/rs/gh.jpg)](https://github.com/collectivecloudperu "GitHub") [![Grupo de WhatsApp](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Grupo de WhatsApp](https://nubecolectiva.com/wp-content/themes/nc/img/rs/wa.jpg)](https://chat.whatsapp.com/IRFbOAzEkWHDbBjCif9x22 "Grupo de WhatsApp") [![Grupo de Telegram](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Grupo de Telegram](https://nubecolectiva.com/wp-content/themes/nc/img/rs/tg.jpg)](https://t.me/joinchat/Juq0ExwZcafgDPDHeRLwXQ "Grupo de Telegram") [![Discord (Programadores)](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Discord (Programadores)](https://nubecolectiva.com/wp-content/themes/nc/img/rs/dcdevs.webp)](https://discord.gg/bXPrKYY "Discord (Programadores)") [![Slack](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Slack](https://nubecolectiva.com/wp-content/themes/nc/img/rs/sl.jpg)](https://nubecolectiva.slack.com/ "Slack") [![Spotify for Podcasters](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Spotify for Podcasters](https://nubecolectiva.com/wp-content/themes/nc/img/rs/sfp.jpg)](https://anchor.fm/nubecolectiva "Spotify for Podcasters") [![Podcasts en Spotify](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Podcasts en Spotify](https://nubecolectiva.com/wp-content/themes/nc/img/rs/sp.jpg)](https://open.spotify.com/show/0IhovCtKYqQIHwvNRTvUhl "Podcasts en Spotify") [![Podcasts en SoundCloud](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Podcasts en SoundCloud](https://nubecolectiva.com/wp-content/themes/nc/img/rs/sc.jpg)](https://soundcloud.com/nube-colectiva/ "Podcasts en SoundCloud") [![Apple Podcasts](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Apple Podcasts](https://nubecolectiva.com/wp-content/themes/nc/img/rs/ap.jpg)](https://apple.co/32W9q7A "Apple Podcasts") [![Open Collectiva](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Open Collectiva](https://nubecolectiva.com/wp-content/themes/nc/img/rs/oc.jpg)](https://opencollective.com/nube-colectiva "Open Collective") [![Threads](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Threads](https://nubecolectiva.com/wp-content/themes/nc/img/rs/thr.jpg)](https://www.threads.net/@nube.colectiva "Threads") [![YouTube Podcasts](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![YouTube Podcasts](https://nubecolectiva.com/wp-content/themes/nc/img/rs/yp.jpg)](https://www.youtube.com/@NubeColectivaDevs/podcasts "YouTube Podcasts") [![Amazon Music for Podcasters](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Amazon Music for Podcasters](https://nubecolectiva.com/wp-content/themes/nc/img/rs/amp.jpg)](https://music.amazon.com/podcasts/8fdb7ad5-115b-49ce-9832-2ba1aafa2a0a/nube-colectiva "Amazon Music for Podcasters") [![Canal de WhatsApp](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Canal de WhatsApp](https://nubecolectiva.com/wp-content/themes/nc/img/rs/wac.jpg)](https://whatsapp.com/channel/0029Va1TzpI72WU03eYrJv1g "Canal de WhatsApp") [![Canal de Telegram](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Canal de Telegram](https://nubecolectiva.com/wp-content/themes/nc/img/rs/tgc.jpg)](https://t.me/+hI8z-OCJF-1kZjAx "Canal de Telegram") [![Signal](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Signal](https://nubecolectiva.com/wp-content/themes/nc/img/rs/si.jpg)](https://signal.group/#CjQKIGT_kc9GXw47qnPiD3hOsPivVO1BGbxoIzVK2MRvOtAFEhC4rrygB4Y25_PFZmH1n3Iu "Signal") [![Bluesky](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Bluesky](https://nubecolectiva.com/wp-content/themes/nc/img/rs/bs.jpg)](https://bsky.app/profile/nubecolectiva.bsky.social "Bluesky") [![Skype](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Skype](https://nubecolectiva.com/wp-content/themes/nc/img/rs/sk.jpg)](https://join.skype.com/gCVma53864oY "Skype") [![Patreon](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Patreon](https://nubecolectiva.com/wp-content/themes/nc/img/rs/pa.jpg)](https://www.patreon.com/NubeColectiva "Patreon") [![Reddit](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Reddit](https://nubecolectiva.com/wp-content/themes/nc/img/rs/re.jpg)](https://www.reddit.com/r/NubeColectiva/ "Reddit") [![Mastodon](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Mastodon](https://nubecolectiva.com/wp-content/themes/nc/img/rs/ma.jpg)](https://mastodon.social/@nubecolectiva "Mastodon") [![Pastebin](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Pastebin](https://nubecolectiva.com/wp-content/themes/nc/img/rs/pb.jpg)](https://pastebin.com/u/NubeColectiva "Pastebin") [![Amazon (USA)](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Amazon (USA)](https://nubecolectiva.com/wp-content/themes/nc/img/rs/aeu.jpg)](https://amzn.to/3x8zMF8 "Amazon (USA)") [![Amazon (España)](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Amazon (España)](https://nubecolectiva.com/wp-content/themes/nc/img/rs/aes.jpg)](https://amzn.to/3Vg1jMT "Amazon (España)") [![Tumblr](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Tumblr](https://nubecolectiva.com/wp-content/themes/nc/img/rs/tum.jpg)](https://www.tumblr.com/nubecolectiva "Tumblr") [![TikTok](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![TikTok](https://nubecolectiva.com/wp-content/themes/nc/img/rs/tt.jpg)](https://www.tiktok.com/@nubecolectiva "TikTok") [![Substack](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Substack](https://nubecolectiva.com/wp-content/themes/nc/img/rs/ss.jpg)](https://substack.com/@nubecolectiva "Substack") [![Kick](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Kick](https://nubecolectiva.com/wp-content/themes/nc/img/rs/ki.jpg)](https://kick.com/nubecolectiva "Kick") [![Truth](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Truth](https://nubecolectiva.com/wp-content/themes/nc/img/rs/tr.jpg)](https://truthsocial.com/@nubecolectiva "Truth") [![Quora](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Quora](https://nubecolectiva.com/wp-content/themes/nc/img/rs/qu.webp)](https://es.quora.com/profile/Nube-Colectiva-1 "Quora") [![DEV](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![DEV](https://nubecolectiva.com/wp-content/themes/nc/img/rs/de.webp)](https://dev.to/nube_colectiva_nc "DEV") [![Hashnode](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Hashnode](https://nubecolectiva.com/wp-content/themes/nc/img/rs/hn.webp)](https://nubecolectiva.hashnode.dev/ "Hashnode") [![Medium](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Medium](https://nubecolectiva.com/wp-content/themes/nc/img/rs/me.webp)](https://medium.com/@nubecolectiva "Medium") [![Peerlist](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Peerlist](https://nubecolectiva.com/wp-content/themes/nc/img/rs/pl.webp)](https://peerlist.io/jrclurita/posts "Peerlist") [![Digg](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Digg](https://nubecolectiva.com/wp-content/themes/nc/img/rs/dg.webp)](https://digg.com/@nubecolectiva "Digg") [![HackerNoon](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![HackerNoon](https://nubecolectiva.com/wp-content/themes/nc/img/rs/hkn.webp)](https://hackernoon.com/u/nucole "HackerNoon") [![UpScrolled: @juancastro](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![UpScrolled: @juancastro](https://nubecolectiva.com/wp-content/themes/nc/img/rs/us.webp)](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/ "UpScrolled: @juancastro") [![VK](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![VK](https://nubecolectiva.com/wp-content/themes/nc/img/rs/vk.webp)](https://vk.com/nubecolectiva "VK") [![Rumble](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![Rumble](https://nubecolectiva.com/wp-content/themes/nc/img/rs/ru.webp)](https://rumble.com/user/NubeColectiva/videos "Rumble") [![beehiiv](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5MCIgaGVpZ2h0PSI3MiIgdmlld0JveD0iMCAwIDkwIDcyIj48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBzdHlsZT0iZmlsbDojY2ZkNGRiO2ZpbGwtb3BhY2l0eTogMC4xOyIvPjwvc3ZnPg==)![beehiiv](https://nubecolectiva.com/wp-content/themes/nc/img/rs/bh.webp)](https://nubecolectiva.beehiiv.com/ "beehiiv") ##### Redes Sociales (Digital) [![YouTube](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=)![YouTube](https://nubecolectiva.com/wp-content/themes/nc/img/rs/yt.jpg)](https://www.youtube.com/channel/UCR7OdhrbfbIefFgcEiZI2FA/videos "YouTube") [![Grupo de WhatsApp](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=)![Grupo de WhatsApp](https://nubecolectiva.com/wp-content/themes/nc/img/rs/wa.jpg)](https://chat.whatsapp.com/Bl4nFxyRNQQ0w2eJYPj63Z "Grupo de WhatsApp") [![Grupo de Telegram](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=)![Grupo de Telegram](https://nubecolectiva.com/wp-content/themes/nc/img/rs/tg.jpg)](https://t.me/joinchat/GI4ejITgEDx8C4yJ "Grupo de Telegram") [![Discord (Digital)](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=)![Discord (Digital)](https://nubecolectiva.com/wp-content/themes/nc/img/rs/dcdigital.webp)](https://discord.com/invite/HKfXjws "Discord (Digital)") [![Skype](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=)![Skype](https://nubecolectiva.com/wp-content/themes/nc/img/rs/sk.jpg)](https://join.skype.com/hX6yo8f94ZQz "Skype") [![Twitch](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=)![Twitch](https://nubecolectiva.com/wp-content/themes/nc/img/rs/twc.jpg)](https://www.twitch.tv/nubecolectivadigital "Twitch") Cerrar ##### Herramientas [![](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=)![](https://nubecolectiva.com/img/coding.png) Documentaciones Oficiales](https://comunidad.nubecolectiva.com/docs "Documentaciones Oficiales") [![](data:image/gif;base64,R0lGODdhAQABAPAAAMPDwwAAACwAAAAAAQABAAACAkQBADs=)![](https://nubecolectiva.com/img/flyer.png) Flyers de Programación](https://nubecolectiva.com/comunidad/flyers/ "Flyers de Programación") Cerrar ##### 🔥 Todas las Categorías [Accesorios Dev](https://nubecolectiva.com/blog/category/utilidades/accesorios-dev/ "Artículos y Tutoriales de Accesorios Dev") [Agentes de IA](https://nubecolectiva.com/blog/category/inteligencia-artificial/agentes-de-ia/ "Artículos y Tutoriales de Agentes de IA") [Agile](https://nubecolectiva.com/blog/category/devs/agile/ "Artículos y Tutoriales de Agile") [Análisis y Rendimiento](https://nubecolectiva.com/blog/category/movil/analisis-y-rendimiento/ "Artículos y Tutoriales de Análisis y Rendimiento") [analytic](https://nubecolectiva.com/blog/category/analytic/ "Artículos y Tutoriales de analytic") [Android](https://nubecolectiva.com/blog/category/movil/android/ "Artículos y Tutoriales de Android") [Android Studio](https://nubecolectiva.com/blog/category/movil/android/android-studio/ "Artículos y Tutoriales de Android Studio") [Angular](https://nubecolectiva.com/blog/category/frontend/angular-js/ "Artículos y Tutoriales de Angular") [Anuncios](https://nubecolectiva.com/blog/category/anuncios/ "Artículos y Tutoriales de Anuncios") [Apache Cassandra](https://nubecolectiva.com/blog/category/bases-de-datos/apache-cassandra/ "Artículos y Tutoriales de Apache Cassandra") [API REST](https://nubecolectiva.com/blog/category/backend/api-rest/ "Artículos y Tutoriales de API REST") [APIs](https://nubecolectiva.com/blog/category/apis/ "Artículos y Tutoriales de APIs") [Apple​ WWDC](https://nubecolectiva.com/blog/category/eventos-dev/apple-wwdc/ "Artículos y Tutoriales de Apple​ WWDC") [Arduino](https://nubecolectiva.com/blog/category/arduino/ "Artículos y Tutoriales de Arduino") [Arq. de Software](https://nubecolectiva.com/blog/category/arquitectura-de-software/ "Artículos y Tutoriales de Arq. de Software") [Articulos](https://nubecolectiva.com/blog/category/articulos/ "Artículos y Tutoriales de Articulos") [Axios](https://nubecolectiva.com/blog/category/frontend/axios/ "Artículos y Tutoriales de Axios") [Backend](https://nubecolectiva.com/blog/category/backend/ "Artículos y Tutoriales de Backend") [Bases de Datos](https://nubecolectiva.com/blog/category/bases-de-datos/ "Artículos y Tutoriales de Bases de Datos") [Blockchain](https://nubecolectiva.com/blog/category/articulos/blockchain/ "Artículos y Tutoriales de Blockchain") [Bootstrap](https://nubecolectiva.com/blog/category/frontend/bootstrap/ "Artículos y Tutoriales de Bootstrap") [C\#](https://nubecolectiva.com/blog/category/backend/c/ "Artículos y Tutoriales de C#") [C++](https://nubecolectiva.com/blog/category/c-mas/ "Artículos y Tutoriales de C++") [CDNs](https://nubecolectiva.com/blog/category/cdns/ "Artículos y Tutoriales de CDNs") [ChatGPT](https://nubecolectiva.com/blog/category/inteligencia-artificial/chatgpt/ "Artículos y Tutoriales de ChatGPT") [Chrome Dev Tools](https://nubecolectiva.com/blog/category/articulos/dev-tools-google-chrome/ "Artículos y Tutoriales de Chrome Dev Tools") [Ciberseguridad](https://nubecolectiva.com/blog/category/ciberseguridad/ "Artículos y Tutoriales de Ciberseguridad") [Claude AI](https://nubecolectiva.com/blog/category/inteligencia-artificial/claude-ai/ "Artículos y Tutoriales de Claude AI") [Cloud Computing](https://nubecolectiva.com/blog/category/cloud-computing/ "Artículos y Tutoriales de Cloud Computing") [Cómo Aprender](https://nubecolectiva.com/blog/category/como-aprender/ "Artículos y Tutoriales de Cómo Aprender") [Comunidad](https://nubecolectiva.com/blog/category/comunidad/ "Artículos y Tutoriales de Comunidad") [CSS](https://nubecolectiva.com/blog/category/frontend/css/ "Artículos y Tutoriales de CSS") [DApps](https://nubecolectiva.com/blog/category/dapps/ "Artículos y Tutoriales de DApps") [Dart](https://nubecolectiva.com/blog/category/dart/ "Artículos y Tutoriales de Dart") [Data Mining](https://nubecolectiva.com/blog/category/data-mining/ "Artículos y Tutoriales de Data Mining") [Data Science (Ciencia de Datos)](https://nubecolectiva.com/blog/category/data-science/ "Artículos y Tutoriales de Data Science (Ciencia de Datos)") [DeepSeek](https://nubecolectiva.com/blog/category/inteligencia-artificial/deepseek/ "Artículos y Tutoriales de DeepSeek") [Developers](https://nubecolectiva.com/blog/category/developers/ "Artículos y Tutoriales de Developers") [DevOps](https://nubecolectiva.com/blog/category/devops/ "Artículos y Tutoriales de DevOps") [Devs](https://nubecolectiva.com/blog/category/devs/ "Artículos y Tutoriales de Devs") [Devs Hardware](https://nubecolectiva.com/blog/category/utilidades/devs-hardware/ "Artículos y Tutoriales de Devs Hardware") [Dialogflow](https://nubecolectiva.com/blog/category/inteligencia-artificial/dialogflow/ "Artículos y Tutoriales de Dialogflow") [Django](https://nubecolectiva.com/blog/category/backend/django/ "Artículos y Tutoriales de Django") [Docker](https://nubecolectiva.com/blog/category/docker/ "Artículos y Tutoriales de Docker") [Editores de Código](https://nubecolectiva.com/blog/category/devs/editores-de-codigo/ "Artículos y Tutoriales de Editores de Código") [Electron JS](https://nubecolectiva.com/blog/category/electron-js/ "Artículos y Tutoriales de Electron JS") [Entretenimiento](https://nubecolectiva.com/blog/category/entretenimiento/ "Artículos y Tutoriales de Entretenimiento") [Ethical Hacking](https://nubecolectiva.com/blog/category/ethical-hacking/ "Artículos y Tutoriales de Ethical Hacking") [Eventos](https://nubecolectiva.com/blog/category/comunidad/eventos/ "Artículos y Tutoriales de Eventos") [Eventos Dev](https://nubecolectiva.com/blog/category/eventos-dev/ "Artículos y Tutoriales de Eventos Dev") [Experimental](https://nubecolectiva.com/blog/category/experimental/ "Artículos y Tutoriales de Experimental") [Firebase](https://nubecolectiva.com/blog/category/firebase/ "Artículos y Tutoriales de Firebase") [Flutter](https://nubecolectiva.com/blog/category/flutter/ "Artículos y Tutoriales de Flutter") [Flyers](https://nubecolectiva.com/blog/category/comunidad/flyers/ "Artículos y Tutoriales de Flyers") [Frontend](https://nubecolectiva.com/blog/category/frontend/ "Artículos y Tutoriales de Frontend") [Game Dev](https://nubecolectiva.com/blog/category/game-dev/ "Artículos y Tutoriales de Game Dev") [Gemini AI](https://nubecolectiva.com/blog/category/inteligencia-artificial/gemini-ai/ "Artículos y Tutoriales de Gemini AI") [Gin](https://nubecolectiva.com/blog/category/backend/gin/ "Artículos y Tutoriales de Gin") [Git](https://nubecolectiva.com/blog/category/articulos/git/ "Artículos y Tutoriales de Git") [GitHub](https://nubecolectiva.com/blog/category/articulos/github/ "Artículos y Tutoriales de GitHub") [GitHub Copilot](https://nubecolectiva.com/blog/category/inteligencia-artificial/github-copilot/ "Artículos y Tutoriales de GitHub Copilot") [GitOps](https://nubecolectiva.com/blog/category/gitops/ "Artículos y Tutoriales de GitOps") [Google IO](https://nubecolectiva.com/blog/category/eventos-dev/google-io/ "Artículos y Tutoriales de Google IO") [GraphQL](https://nubecolectiva.com/blog/category/backend/api-rest/graphql/ "Artículos y Tutoriales de GraphQL") [Grok AI](https://nubecolectiva.com/blog/category/inteligencia-artificial/grok-ai/ "Artículos y Tutoriales de Grok AI") [Hacking Ético](https://nubecolectiva.com/blog/category/ciberseguridad/hacking-etico/ "Artículos y Tutoriales de Hacking Ético") [Herramientas](https://nubecolectiva.com/blog/category/herramientas/ "Artículos y Tutoriales de Herramientas") [HTML 5](https://nubecolectiva.com/blog/category/frontend/html/ "Artículos y Tutoriales de HTML 5") [Inteligencia Artificial](https://nubecolectiva.com/blog/category/inteligencia-artificial/ "Artículos y Tutoriales de Inteligencia Artificial") [Ionic](https://nubecolectiva.com/blog/category/movil/ionic/ "Artículos y Tutoriales de Ionic") [iOS](https://nubecolectiva.com/blog/category/movil/ios/ "Artículos y Tutoriales de iOS") [JAMStack](https://nubecolectiva.com/blog/category/jamstack/ "Artículos y Tutoriales de JAMStack") [Java](https://nubecolectiva.com/blog/category/java/ "Artículos y Tutoriales de Java") [JavaScript](https://nubecolectiva.com/blog/category/frontend/javascript/ "Artículos y Tutoriales de JavaScript") [jQuery](https://nubecolectiva.com/blog/category/frontend/jquery/ "Artículos y Tutoriales de jQuery") [Kotlin](https://nubecolectiva.com/blog/category/movil/android/kotlin/ "Artículos y Tutoriales de Kotlin") [Kubernetes](https://nubecolectiva.com/blog/category/kubernetes/ "Artículos y Tutoriales de Kubernetes") [Laravel](https://nubecolectiva.com/blog/category/backend/laravel/ "Artículos y Tutoriales de Laravel") [Linux](https://nubecolectiva.com/blog/category/linux/ "Artículos y Tutoriales de Linux") [Lógica de Programación](https://nubecolectiva.com/blog/category/devs/logica-de-programacion/ "Artículos y Tutoriales de Lógica de Programación") [Machine Learning](https://nubecolectiva.com/blog/category/machine-learning/ "Artículos y Tutoriales de Machine Learning") [MariaDB](https://nubecolectiva.com/blog/category/bases-de-datos/mariadb/ "Artículos y Tutoriales de MariaDB") [Marketing Digital](https://nubecolectiva.com/blog/category/marketing-digital/ "Artículos y Tutoriales de Marketing Digital") [Material Design](https://nubecolectiva.com/blog/category/frontend/material-design/ "Artículos y Tutoriales de Material Design") [MCP](https://nubecolectiva.com/blog/category/inteligencia-artificial/mcp/ "Artículos y Tutoriales de MCP") [Micro Frontend](https://nubecolectiva.com/blog/category/frontend/micro-frontends/ "Artículos y Tutoriales de Micro Frontend") [MongoDB](https://nubecolectiva.com/blog/category/mongo-db/ "Artículos y Tutoriales de MongoDB") [Móvil](https://nubecolectiva.com/blog/category/movil/ "Artículos y Tutoriales de Móvil") [MS SQL Server](https://nubecolectiva.com/blog/category/bases-de-datos/ms-sql-server/ "Artículos y Tutoriales de MS SQL Server") [MySQL](https://nubecolectiva.com/blog/category/bases-de-datos/mysql/ "Artículos y Tutoriales de MySQL") [News](https://nubecolectiva.com/blog/category/news/ "Artículos y Tutoriales de News") [NFT](https://nubecolectiva.com/blog/category/nft/ "Artículos y Tutoriales de NFT") [Node JS](https://nubecolectiva.com/blog/category/backend/node-js/ "Artículos y Tutoriales de Node JS") [Novedades](https://nubecolectiva.com/blog/category/articulos/novedades/ "Artículos y Tutoriales de Novedades") [Oracle DB](https://nubecolectiva.com/blog/category/bases-de-datos/oracle-db/ "Artículos y Tutoriales de Oracle DB") [Otros](https://nubecolectiva.com/blog/category/otros/ "Artículos y Tutoriales de Otros") [Pentesting](https://nubecolectiva.com/blog/category/pentesting/ "Artículos y Tutoriales de Pentesting") [PHP](https://nubecolectiva.com/blog/category/backend/php/ "Artículos y Tutoriales de PHP") [PostgreSQL](https://nubecolectiva.com/blog/category/bases-de-datos/postgresql/ "Artículos y Tutoriales de PostgreSQL") [Premium](https://nubecolectiva.com/blog/category/premium/ "Artículos y Tutoriales de Premium") [Programación](https://nubecolectiva.com/blog/category/programacion/ "Artículos y Tutoriales de Programación") [Python](https://nubecolectiva.com/blog/category/backend/python/ "Artículos y Tutoriales de Python") [Ranking BD](https://nubecolectiva.com/blog/category/bases-de-datos/ranking-bd/ "Artículos y Tutoriales de Ranking BD") [Ranking Lenguajes](https://nubecolectiva.com/blog/category/ranking-lenguajes-de-programacion/ "Artículos y Tutoriales de Ranking Lenguajes") [Rankings / Tops](https://nubecolectiva.com/blog/category/rankings-tops/ "Artículos y Tutoriales de Rankings / Tops") [Raspberry Pi](https://nubecolectiva.com/blog/category/raspberry-pi/ "Artículos y Tutoriales de Raspberry Pi") [React JS](https://nubecolectiva.com/blog/category/frontend/react-js/ "Artículos y Tutoriales de React JS") [React Native](https://nubecolectiva.com/blog/category/movil/react-native/ "Artículos y Tutoriales de React Native") [Recursos](https://nubecolectiva.com/blog/category/articulos/recursos/ "Artículos y Tutoriales de Recursos") [Redis](https://nubecolectiva.com/blog/category/bases-de-datos/redis/ "Artículos y Tutoriales de Redis") [Redux](https://nubecolectiva.com/blog/category/redux/ "Artículos y Tutoriales de Redux") [Ruby](https://nubecolectiva.com/blog/category/backend/ruby/ "Artículos y Tutoriales de Ruby") [Ruby on Rails](https://nubecolectiva.com/blog/category/backend/ruby-on-rails/ "Artículos y Tutoriales de Ruby on Rails") [Rust](https://nubecolectiva.com/blog/category/backend/rust/ "Artículos y Tutoriales de Rust") [Seguridad](https://nubecolectiva.com/blog/category/seguridad/ "Artículos y Tutoriales de Seguridad") [SEO](https://nubecolectiva.com/blog/category/seo/ "Artículos y Tutoriales de SEO") [Servidores](https://nubecolectiva.com/blog/category/servidores/ "Artículos y Tutoriales de Servidores") [Sin categoría](https://nubecolectiva.com/blog/category/sin-categoria/ "Artículos y Tutoriales de Sin categoría") [Social Media](https://nubecolectiva.com/blog/category/social-media/ "Artículos y Tutoriales de Social Media") [Socket IO](https://nubecolectiva.com/blog/category/articulos/socket-io/ "Artículos y Tutoriales de Socket IO") [Spring](https://nubecolectiva.com/blog/category/backend/spring/ "Artículos y Tutoriales de Spring") [SQL](https://nubecolectiva.com/blog/category/bases-de-datos/sql/ "Artículos y Tutoriales de SQL") [SQLite](https://nubecolectiva.com/blog/category/bases-de-datos/sqlite/ "Artículos y Tutoriales de SQLite") [Stack Overflow](https://nubecolectiva.com/blog/category/articulos/stack-overflow/ "Artículos y Tutoriales de Stack Overflow") [Svelte](https://nubecolectiva.com/blog/category/frontend/svelte/ "Artículos y Tutoriales de Svelte") [Swift](https://nubecolectiva.com/blog/category/movil/ios/swift/ "Artículos y Tutoriales de Swift") [Tailwind CSS](https://nubecolectiva.com/blog/category/frontend/tailwind-css/ "Artículos y Tutoriales de Tailwind CSS") [Tecnología](https://nubecolectiva.com/blog/category/tecnologia/ "Artículos y Tutoriales de Tecnología") [Tendencias GitHub](https://nubecolectiva.com/blog/category/articulos/github/tendencias-github/ "Artículos y Tutoriales de Tendencias GitHub") [Terminal y Consolas](https://nubecolectiva.com/blog/category/programacion/terminal-y-consolas/ "Artículos y Tutoriales de Terminal y Consolas") [Testing](https://nubecolectiva.com/blog/category/testing/ "Artículos y Tutoriales de Testing") [Tutoriales](https://nubecolectiva.com/blog/category/tutoriales/ "Artículos y Tutoriales de Tutoriales") [Tutoriales de Go](https://nubecolectiva.com/blog/category/backend/tutoriales-go/ "Artículos y Tutoriales de Tutoriales de Go") [TypeScript](https://nubecolectiva.com/blog/category/frontend/typescript/ "Artículos y Tutoriales de TypeScript") [Ubuntu](https://nubecolectiva.com/blog/category/linux/ubuntu/ "Artículos y Tutoriales de Ubuntu") [UI](https://nubecolectiva.com/blog/category/ui/ "Artículos y Tutoriales de UI") [Unicode](https://nubecolectiva.com/blog/category/unicode/ "Artículos y Tutoriales de Unicode") [Unity](https://nubecolectiva.com/blog/category/game-dev/unity/ "Artículos y Tutoriales de Unity") [Utilidades](https://nubecolectiva.com/blog/category/utilidades/ "Artículos y Tutoriales de Utilidades") [UX](https://nubecolectiva.com/blog/category/ux/ "Artículos y Tutoriales de UX") [Visual Studio Code](https://nubecolectiva.com/blog/category/devs/editores-de-codigo/visual-studio-code/ "Artículos y Tutoriales de Visual Studio Code") [Vite JS](https://nubecolectiva.com/blog/category/frontend/vite-js/ "Artículos y Tutoriales de Vite JS") [VPS](https://nubecolectiva.com/blog/category/servidores/vps/ "Artículos y Tutoriales de VPS") [Vue JS](https://nubecolectiva.com/blog/category/frontend/vue-js/ "Artículos y Tutoriales de Vue JS") [Web 3.0](https://nubecolectiva.com/blog/category/web-3-0/ "Artículos y Tutoriales de Web 3.0") [Wordpress](https://nubecolectiva.com/blog/category/wordpress/ "Artículos y Tutoriales de Wordpress") Cerrar ##### Newsletter Cerrar
Readable Markdown
En esta página: - [Partes](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/#toc-1) - [Deshaciendo Commits](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/#toc-2) - [Deshaciendo Localmente Commits para evitar Archivos no deseados](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/#toc-3) - [Deshaciendo Localmente Commits con Mensajes de confirmación mal escritos](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/#toc-4) - [Deshaciendo Localmente Commits para Agregar cambios al último commit](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/#toc-5) - [Nota (s)](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota/#toc-6) En la industria actual hay muchos desarrolladores y equipos de trabajo que suelen usar Git y GitHub para gestionar los repositorios de sus proyectos. Git es el sistema de control de versiones (VCS) más popular del mundo actualmente, nos permite hacer un seguimiento de los cambios de archivos basados en texto. Pero a veces como seres humanos podemos cometer errores a la hora de subir cambios a GitHub, en este Post te enseñare como deshacer estos cambios o commits antes de ser enviados, vamos con ello. ## Partes - Parte 1 - [Parte 2](https://nubecolectiva.com/blog/como-deshacer-commits-en-git-forma-local-y-remota-parte-2-final/) (Final) [![](https://nubecolectiva.com/wp-content/uploads/2021/04/j1.jpg)](https://nubecolectiva.com/wp-content/uploads/2021/04/j1.jpg) Antes de continuar, te invito a leer los siguientes artículos para que estés familiarizado con este tutorial: - [Que es Git, como utilizarlo y otros detalles](https://nubecolectiva.com/blog/que-es-git-como-utilizarlo-y-otros-detalles/) - [Conceptos y Técnicas de Git que debes saber antes de unirte a un Equipo de Git – Parte 1](https://nubecolectiva.com/blog/conceptos-y-tecnicas-de-git-que-debes-saber-antes-de-unirte-a-un-equipo-de-git-parte-1/) - [Que son las Ramas (Branches) en Git, como utilizarlas y otros detalles](https://nubecolectiva.com/blog/que-son-las-ramas-branches-en-git-como-utilizarlas-y-otros-detalles/) - [Como usar la versión GUI de Git (No Consola GitBash)](https://nubecolectiva.com/blog/como-usar-la-version-gui-de-git-no-consola-gitbash/) - Puedes leer más en la [categoría Git](https://nubecolectiva.com/blog/category/articulos/git/) Asimismo te invito a escuchar el **Podcast**: “*5 Consejos para ser un Programador más Productivo*” (No son los clásicos consejos técnicos de programación, si no de rutinas y buenos hábitos cotidianos): Bien ahora continuemos con el Post: Como Deshacer Commits en Git (Forma Local y Remota) – Parte 1. Para este Post haré uso de [este repositorio](https://github.com/collectivecloudperu/reloj-numerico-javascript) el cual pertenece al tutorial llamado [Como Crear un Reloj Digital (Numérico) con JavaScript](https://nubecolectiva.com/blog/como-crear-un-reloj-digital-numerico-con-javascript/). Bueno ahora pasemos a realizar operaciones en el repositorio. ## Deshaciendo Commits Los commits de Git más fáciles de deshacer son los que aún no han sido enviando a un repositorio remoto como GitHub, Bitbucket, etc. Como usuario propietario, eres libre de hacer cualquier cosa en tu repositorio local. Pero cuando se trata de editar un historial de commits que se envían a un repositorio remoto, que por cierto pueden ser usados públicamente una ves que se encuentran en línea. Esto significa que estamos poniendo en peligro el trabajo de otros desarrolladores al destruir el historia de git que ya está en uso. Por ello vamos a ver casos de como deshacer commits local y remotamente. En esta primera parte vamos a ver casos de manera local. ### Deshaciendo Localmente Commits para evitar Archivos no deseados Supongamos que estoy a punto de realizar un commit en mi repositorio local, haciendo uso del comando **git add .** o **git add –all** los cuales agregan todos los cambios de archivo al área de preparación en el repositorio. A veces podemos olvidar que algunos archivos no están relacionados con ese commit y no deberíamos de incluirlos. Por suerte no es demasiado tarde, ya que podemos hacer uso del comando **git reset** agregando el **nombredelarchivo** que no queremos incluir. Por ejemplo si en mi repositorio local en la PC tengo un archivo llamado **test.rar** y ese archivo no forma parte del proyecto y no lo quiero incluir. | | | |---|---| | 1 2 3 4 5 6 7 8 | /reloj\-numerico\-javascript ├── /css ├── /js ├── index.html ├── README.md ├── test.rar // Omitir este Archivo | Puedo hacer los pasos correspondientes para subir cambios a mi repositorio remoto, pero luego de ejecutar el comando **git add .** debo de escribir el comando **git reset test.rar** para no incluir ese archivo y luego continuar con los pasos respectivos para subir los cambios. | | | |---|---| | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | // Preparo los archivos git add . // No incluir el archivo test.rar git reset test.rar // Preparar el Commit git commit \-m "Cambios" \[main 08c3d2f\] Cambios 1 file changed, 1 insertion(\+), 1 deletion(\-) // Subir los cambios al repositorio remoto (GitHub) git push Enumerating objects: 5, done. Counting objects: 100% (5/5), done. Delta compression using up to 8 threads Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 366 bytes \| 366\.00 KiB/s, done. Total 3 (delta 1), reused 0 (delta 0), pack\-reused 0 remote: Resolving deltas: 100% (1/1), completed with 1 local object. To https://github.com/collectivecloudperu/reloj-numerico-javascript.git 65006a0..08c3d2f main \-\> main | Como yo solo hice unos cambios en el archivo **index.html** del proyecto, si voy al repositorio remoto en GitHub, puedo ver que solo hubo cambios en ese archivo y el archivo **test.rar** no se subió. [![](https://nubecolectiva.com/wp-content/uploads/2021/04/j2.jpg)](https://nubecolectiva.com/wp-content/uploads/2021/04/j2.jpg) Bien ahora pasemos a otro caso sobre los mensajes de confirmación mal escritos. ### Deshaciendo Localmente Commits con Mensajes de confirmación mal escritos Luego de hacer mi último commit en mi repositorio local, puede pasar que escribí mal una palabra en mi mensaje de confirmación o commit, por ejemplo escribí la palabra *“Cabios”* en lugar de la palabra *“Cambios”*, no es demasiado tarde ya que puedo usar el comando **git commit** con la flag o bandera **–amend**, es decir el comando quedaría así **git commit –amend -m “Cambios”** | | | |---|---| | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 | // Palabra 'Cambios' mal escrita git commit \-m "Cabios" \[main 3d88eef\] Cabios 2 files changed, 1 insertion(\+), 1 deletion(\-) create mode 100644 test.rar // Palabra 'Cambios' corregida git commit \--amend \-m "Cambios" \[main 663c8d1\] Cambios Date: Sun Apr 18 23:41:21 2021 \-0500 2 files changed, 1 insertion(\+), 1 deletion(\-) create mode 100644 test.rar | Entonces si hago todos los pasos correspondientes para subir los cambios (suponiendo que hice cambios solamente en el archivo **index.html**) al repositorio remoto, puedo ver en GitHub que el texto o palabra *Cambios* aparece correctamente. [![](https://nubecolectiva.com/wp-content/uploads/2021/04/edit_j3.jpg)](https://nubecolectiva.com/wp-content/uploads/2021/04/edit_j3.jpg) Ahora pasemos a ver otro caos referente a cambios al último commit ### Deshaciendo Localmente Commits para Agregar cambios al último commit Supongamos que tenemos un commit que aún no se ha enviado y nos damos cuenta que se necesitan hacer cambios adicionales. Para solucionar esto, primero debemos agregar los archivos modificados al área de preparación mediante el comando **git add** seguido del **nombredelarchivo**. Por ejemplo tengo un archivo llamado **test.txt** el cual quiero agregar a mi commit a último momento | | | |---|---| | 1 2 3 4 5 6 7 8 | /reloj\-numerico\-javascript ├── /css ├── /js ├── index.html ├── README.md ├── test.txt // Agregue este archivo a ultimo momento | Antes de que el archivo **test.txt** fuese creado yo ejecute el primer comando que sirve para preparar los cambios, es decir el comando **git add .** y luego que agregue el archivo **test.txt**, entonces allí debo de ejecutar el comando **git add test.txt** para incluirlo en el commit. | | | |---|---| | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | // Preparo los archivos git add . // Agrego el archivo que fue creado a último momento git add test.txt // Preparo el Commit git commit \-m "Cambios" \[main 5eb3c4c\] Cambios 1 file changed, 0 insertions(\+), 0 deletions(\-) create mode 100644 test.txt // Subo los cambios al repositorio remoto (GitHub) git push Enumerating objects: 4, done. Counting objects: 100% (4/4), done. Delta compression using up to 8 threads Compressing objects: 100% (2/2), done. Writing objects: 100% (3/3), 266 bytes \| 266\.00 KiB/s, done. Total 3 (delta 1), reused 1 (delta 0), pack\-reused 0 remote: Resolving deltas: 100% (1/1), completed with 1 local object. To https://github.com/collectivecloudperu/reloj-numerico-javascript.git e05abff..5eb3c4c main \-\> main | Entonces si voy a mi repositorio remoto en GitHub, puedo ver que se ha incluido el archivo **test.txt** sin problemas. [![](https://nubecolectiva.com/wp-content/uploads/2021/04/j4.jpg)](https://nubecolectiva.com/wp-content/uploads/2021/04/j4.jpg) Bueno hasta aquí terminamos con la primera parte de este Post en donde aprendimos a deshacer commits de manera local. **Ten Paciencia, lo que quiero es que** conozcas bien como deshacer commits y no llenarte el capitulo de mucho contenido porque te puedes marear y no tendrás un óptimo aprendizaje. ## Nota (s) - En la siguiente parte y última, vamos a deshacer commits de repositorios remotos. - No olvides que debemos usar la Tecnología para hacer cosas Buenas por el Mundo. Síguenos en nuestras Redes Sociales para que no te pierdas nuestros próximos contenidos.
Shard174 (laksa)
Root Hash5501049589212001974
Unparsed URLcom,nubecolectiva!/blog/como-deshacer-commits-en-git-forma-local-y-remota/ s443