Mostrando las entradas con la etiqueta codeberg. Mostrar todas las entradas
Mostrando las entradas con la etiqueta codeberg. Mostrar todas las entradas

Cómo sobrescribir un repositorio remoto en Codeberg con archivos locales.

Sobrescribir un repositorio remoto con tus archivos locales.

Es normal que hayamos subido un proyecto a CodeBerg en el momento en el que el mismo era funcional, y que luego hayamos seguido trabajando en él "localmente" para "pulirlo", actualizarlo, agregarle funcionalidades, etc.

En esta entrada vamos a ver cómo hacer para que dichas actualizaciones y cambios se reflejen en CodeBerg. ¡Mirá qué fácil que es!

1. Abrí una terminal en el directorio raíz de tu proyecto (es decir, en la carpeta de tu proyecto).

2. Agregá todos los archivos locales (nuevos, modificados, "borrados", etc.):
git add .

3. Confirmá los cambios con un mensaje informativo que te parezca acorde:
git commit -m "Actualización general del proyecto."

4. Forzá el "push" al repositorio remoto para sobreescribir todo en la rama "main":
git push origin main --force

¡Listo! Tus archivos locales han reemplazado a todos los que estaban en tu proyecto, en Codeberg.

Podés tener plena seguridad de que tu repositorio remoto será un espejo exacto de tu directorio local, ya que el "--force" del script se encarga exactamente de eso. Y si llegara a haber archivos en el repositorio remoto que ya no deberían estar allí, se borrarán con el push forzado, ya que git entenderá que si no existen localmente, no deberían estar presentes remotamente, tampoco. Dicho de manera simple: el directorio que "manda", es el local.


Cómo subir más archivos o carpetas a un proyecto existente de Codeberg.

 

Cómo subir más archivos o carpetas a un proyecto existente de Codeberg.

1. Verificá si estás en la rama correcta en CodeBerg (por ejemplo, "main" o "master"):

git branch

Esto te mostrará la rama actual (marcada con un "*"). Si ves que no estás en la rama correcta, cambiala con:

git checkout nombre_de_la_rama

2. [OPCIONAL] Confirmá, también, que los archivos estén en el repositorio local:

ls -R

Esto listará todos los archivos y carpetas de tu proyecto en tu computadora. Si los mismos no aparecen, verificá si realmente los creaste (o copiaste, o moviste) correctamente al directorio local del proyecto.

3. Añadí los archivos y/o directorios al control de versiones del próximo "commit":

git add directorio_1
git add directorio_2
git add archivo_1
git add archivo_2

etc.

Si los elementos son muchos y querés agregarlos a todos de una sola vez, podés hacer "git add ."

Nota: Git ignora a las carpetas vacías: de ser este el caso, Git no las subirá. Asegurate de que los archivos necesarios estén dentro.

4. Creá un "commit" con los cambios. Ejemplo:

git commit -m "Se agrega un directorio conteniendo 3 archivos."

5. Subí todo a la rama remota:

git push origin nombre_de_la_rama

¡Pronto!

Subir un archivo tipo "fork" a un proyecto existente en CodeBerg, sustituyendo al que ya está allí.


Dado que ya existen en el blog otros 2 artículos que abordan temáticas relativas a CodeBerg, asumiré que en este caso, las referencias y explicaciones correspondientes a cada uno de estos pasos que veremos, se podrán consultar allí si es necesario. Los podés consultar desde acá mismo:

Brevísimo manual para subir scripts BASH a Codeberg: https://entropiabinaria.blogspot.com/2025/06/brevisimo-manual-para-subir-scripts.html

Cambiar el nombre de un proyecto (y de sus archivos) en CodeBerg sin perder el historial: https://entropiabinaria.blogspot.com/2025/07/cambiar-el-nombre-de-un-proyecto-y-de.html

En esta entrada, preferimos ser directos, para no terminar siendo redundantes.

Estos son los pasos concisos para reemplazar un archivo ya alojado en CodeBerg (en este caso "monitux.sh") con otro que lo reemplazará (en nuestro ejemplo, "big_monitux.sh"), manteniendo el historial.

Abrí la terminal en el directorio en donde tenés al archivo nuevo o "fork", o abrí una terminal y andá hasta la carpeta local de tu repositorio (monitux).

  1. Hacé git pull origin main (1)
  2. Luego, rm monitux.sh (tené cuidado, que acá estás eliminando un archivo localmente, ¡hacé respaldo!)
  3. Después, mv big_monitux.sh monitux.sh
  4. A continuación, git add monitux.sh
  5. Hacé un "commit" para explicar estos cambios: git commit -m "Se fusionaron las funcionalidades de rotación de 'rotéitor.sh' con las de encendido y apagado de pantallas de 'pantallas.sh', creándose así 'monitux.sh'."
  6. Ahora: git push origin main (2)

¡Listo! Una vez hecho esto, el nuevo archivo (ahora sí, "monitux.sh") habrá quedado como sustituto del anterior "monitux.sh" en tu espacio en Codeberg, con su historial intacto.

NOTAS IMPORTANTES. 

(1) Si tenés problemas ya de entrada, hacé lo siguiente:
ejecutá "git remote -v", y si no ves "origin" apuntando a la URL indicada (la cual en este caso de ejemplo, sería "https://codeberg.org/entropiabinaria/monitux.git"), entonces...

Hacé un "git remote add origin <URL_de_tu_proyecto.git>" (en este caso: "git remote add origin https://codeberg.org/entropiabinaria/monitux.git")
Si en este paso, la terminal te devuelve "error: remoto origin ya existe", hacé
"git remote remove origin" y "git remote add origin https://codeberg.org/entropiabinaria/monitux.git".

Al hacer de nuevo un "git remote -v", esta vez verás algo así:
origin  https://codeberg.org/entropiabinaria/monitux.git (fetch)
origin  https://codeberg.org/entropiabinaria/monitux.git (push)

Hacé el paso 2 de la lista de arriba.
Ahora hacé el paso 1.
Ahora, seguí a partir del paso 3. Ya no deberían darse más errores.

(2) Si en este paso, la terminal te dice
error: src refspec main no concuerda con ninguno
error: falló el empuje de algunas referencias a '<URL_de_tu_proyecto.git>'

hacé:
"git push --set-upstream origin main", o, en caso de error "git push --set-upstream origin master:main".

Cambiar el nombre de un proyecto (y de sus archivos) en CodeBerg sin perder el historial.

Ayer me encontraba en la situación de haberle cambiado de nombre a un script en mi máquina, y como necesitaba subirlo a CodeBerg, quería cambiarle de nombre también al proyecto que ya estaba alojado allí. El anterior era "pantallas.sh" y su URL era "https://codeberg.org/entropiabinaria/pantallas", pero yo quería que el script cambiara su nombre dentro de CodeBerg a "monitux.sh", y que su URL pasara a ser "https://codeberg.org/entropiabinaria/monitux" pero sin perder el "historial" anterior, ya que "monitux.sh" era un "fork-actualización" de "pantallas.sh".
Esta es una situación bastante común cuando los proyectos evolucionan. Uno quiere mantener el historial de cambios (el "progreso" anterior) y, al mismo tiempo, reflejar el nuevo nombre del script y del repositorio.

Te cuento una solución posible, que fue la que apliqué (y la que seguiré aplicando cada vez que se plantee la misma situación). Lo que hice fue esto: renombré (con el comando "git") al archivo nuevo y renombré también al repositorio en CodeBerg (utilizando la interfaz web del sitio).

Los pasos que realicé, fueron, en resumidas cuentas, los siguientes:

1. renombré al archivo localmente (utilizando "git"),
2. hice un "commit" de ese renombramiento,
3. subí los nuevos archivos a CodeBerg,
4. renombré al repositorio utilizando "la interfaz" de CodeBerg,
5. actualicé localmente la URL vieja por la nueva, para que git se enterara del "nuevo repositorio correspondiente al mismo proyecto".

NOTA MUY IMPORTANTE: si te pasó lo mismo y querés solucionarlo siguiendo esta guía, te recomiendo que lo hagas únicamente cuando tengas un rato libre y que no interrumpas el proceso hasta finalizarlo. De lo contrario, pueden surgir errores inesperados que te harán perder tiempo buscando soluciones a problemas que no existían. 

Ahora, sí: ¡vamos a ello!

I) Abrí la terminal en el directorio de tu script anterior (ejemplo, "pantallas.sh").
Asegurate de que tu directorio local esté limpio (sin cambios pendientes):

git status


Si hay cambios, hacé un "git add ." y git commit -m "Mensaje" o un "git stash" para guardarlos temporalmente.

II) Renombrá el archivo anterior (pantallas.sh) a "monitux.sh" usando "git".
El siguiente comando le indicará a git que el archivo se ha movido o renombrado. De otro modo, CodeBerg "pensaría" que se eliminó y que se creó uno nuevo. Este paso es sumamente importante a efectos de poder conservar todo el historial anterior (los "commits", las ramas, los "issues" y cualquier contribución anteriormente realizada, para no tener que eliminar todo, empezar desde cero y perder la trazabilidad de los cambios).

git mv pantallas.sh monitux.sh


Si tenés otros archivos o carpetas que también cambiaron de nombre o se relacionaban con el viejo nombre y ahora con "monitux", también renombralos con "git mv". Por ejemplo, si tenés una carpeta "docs-pantallas" que ahora es "docs-monitux":

git mv docs-pantallas docs-monitux

Verificá el cambio con "git status".
Deberías ver algo como: "renamed: pantallas.sh -> monitux.sh".

Confirmá (commit) el renombramiento:

git commit -m "Se ha renombrado 'pantallas.sh' como 'monitux.sh' para reflejar el nuevo nombre del script y del proyecto."

III) Subí estos cambios a Codeberg:

git push origin main

En este punto, si vas a CodeBerg, verás que en tu repositorio "pantallas", ahora existe "monitux.sh" y que el antiguo "pantallas.sh" ya no existe, porque fue renombrado. Git "sabe" que este es el mismo archivo y que el historial es continuo e involucra a ambos.

IV) Ahora dirigite a CodeBerg con el navegador, y andá a tu repositorio "pantallas" (el que pasará a ser el "viejo" en minutos).
Hacé clic en "Configuración" en la barra de navegación del repositorio (este botón se encuentra casi en el ángulo superior derecho).
En la página de configuración, sección "Nombre del repositorio", cambiá el nombre (ej.: de "pantallas" a "monitux", y guardá el cambio con el botón "Guardar configuración".

V) Un paso más a realizar en la terminal.

Tu repositorio local aún seguirá apuntando a la URL anterior, y vas a necesitar actualizar esa referencia con la nueva URL:

git remote set-url origin https://codeberg.org/entropiabinaria/monitux.git

De este modo, la próxima vez que hagas "git pull" o "git push", estos procedimientos apuntarán a esta nueva URL, como debe ser.

¡Listo! ¡Disfrutá compartiendo tu conocimiento!

Brevísimo manual para subir scripts BASH a Codeberg

Brevísimo manual para subir scripts BASH a Codeberg.

Este proceso asume que ya tenés a git instalado.
Ante cualquier error, consultá la última sección (NOTAS IMPORTANTES).

 

Paso 1: inicializar un repositorio git local.

  • Abrí tu terminal en el directorio en donde tengas el script y las carpetas con los sub-archivos del mismo.
  • Una vez ahí, inicializá un repositorio git local con "git init" (esto creará una carpeta oculta ".git" en tu directorio, la cual git utilizará para rastrear los cambios)

La salida que verás en la terminal luego de ejecutar "git init", será similar a esta:

hint: Usando 'master' como el nombre de la rama inicial. Este nombre de rama predeterminado
hint: está sujeto a cambios. Para configurar el nombre de la rama inicial para usar en todos
hint: de sus nuevos repositorios, reprimiendo esta advertencia, llama a:
hint:
hint: git config --global init.defaultBranch <nombre>
hint:
hint: Los nombres comúnmente elegidos en lugar de 'master' son 'main', 'trunk' y
hint: 'development'. Se puede cambiar el nombre de la rama recién creada mediante este comando:
hint:
hint: git branch -m <nombre>
hint:
hint: Disable this message with "git config set advice.defaultBranchName false"

Paso 2: añadir tus archivos al repositorio.

Ahora, hay que decirle a git qué archivos querés que incluya en tu primer "paquete" de cambios. Vas a querer incluir el script junto con las carpetas del mismo, si es que las hay.

  • git add script.sh
  • git add carpeta/

Si tenés otros archivos importantes (licencia, archivos tipo "info", etc.), también agregalos utilizando el mismo procedimiento.

Si querés agregar todos los archivos nuevos y modificados en el directorio actual (cuidado con esto, asegurate de no incluir cosas que no querés), podés hacer "git add ." (el punto importa, y significa "todo lo que está acá").

Si quisieras subir casi todo, pero no todo (por ejemplo, podrías tener una carpeta llamada "respaldos" en donde fuiste guardando copias de tu proyecto, las cuales sería innecesario que luego quedaran en el repositorio de CodeBerg -es mi caso-), podés hacer esto:

- Creá un archivo llamado ".gitignore" en el directorio raíz del proyecto.
- Dentro del mismo, escribí el nombre exacto de los archivos y directorios que no quieras que sean subidos a CodeBerg. Guardalo.
- Ejecutá "git add ." y automáticamente se subirá todo al repositorio, excepto los archivos y carpetas cuyos nombres coincidan con exactitud con las líneas introducidas en ".gitignore".

NOTA: el uso de comodines (*) está soportado.

Paso 3: confirmar los cambios (commit).

Ahora, git ya sabe qué archivos añadir. Creá una "instantánea" de esos cambios con un mensaje que describa lo que hiciste. Esto se llama "commit".

  • git commit -m "Menú interactivo con barra en reversa."

El mensaje es importante para que vos (y otros) entiendan qué contiene ese commit.

Paso 4: crear un repositorio en Codeberg.

  • Ahora andá a la web de Codeberg en el navegador: https://codeberg.org/
  • Iniciá sesión.
  • Hacé clic en el botón "+" (arriba, a la derecha) y seleccioná "Nuevo repositorio".
     

  • Ponele un nombre representativo (ej: menu).
  • Podés añadir una descripción opcional.
  • Desmarcá la opción "Inicializar el repositorio" si vas a subir tus propios archivos "README". De no ser así, podés pedirle a CodeBerg que lo haga por vos, marcando esta opción.
  • Definí el tipo de licencia que quieras para tu proyecto. En nuestro caso, utilizamos "GPL 3.0 or later". Para que te aparezca esta opción, debés marcar la casilla "inicializar el repositorio".
  • Hacé clic en el botón azul "Crear repositorio".
  • Una vez creado, Codeberg te mostrará unas instrucciones. Buscá la sección que dice algo así como "enviar un repositorio existente desde la línea de comandos". Vas a necesitar las dos líneas de comando que te dará. Si CodeBerg simplemente crea el repositorio y no te brinda esta información, simplemente andá arriba, a la derecha, y copiá la línea "https://codeberg.org ... script.git".

Paso 5: conectar tu repositorio local con Codeberg.

  • Volvé a tu terminal.
  • Utilizá las dos líneas que te dio Codeberg (van a ser algo como esto, pero con tu nombre de usuario y el nombre de tu repo):

    git remote add origin https://codeberg.org/tu_usuario/tu_script.git

    git pull origin main --rebase

    git branch -m main

Acordate de que si no te dio esa información, podés obtenerla manualmente en el paso anterior (es la que figura en azul).
La primera línea (la azul) le dice a tu repositorio local dónde está el repositorio remoto en Codeberg.
La segunda, renombra tu rama principal a "main" (es la convención moderna).
La tercera, sincroniza los cambios iniciales (README/licencia).

Paso 6: subir tus cambios a Codeberg (push).

  • Finalmente, enviá todos tus cambios locales (el commit que hiciste) al repositorio en Codeberg con "git push -u origin main"

Te pedirá tu nombre de usuario y tu contraseña de Codeberg (o un token de acceso, si configuraste SSH).

¡Listo! Ahora, toca ir a la página de tu repositorio en Codeberg y ver que están todos tus archivos ahí, y que se actualizaron (o subieron) "hace 1 minuto".

NOTAS IMPORTANTES:

Si por alguna razón tenés que empezar de nuevo (te equivocaste, algo salió mal, etc.), tenés que borrar el directorio oculto ".git" que fue creado cuando hiciste "git init".

Si te "salta" este error en rojo

error: falló el empuje de algunas referencias a 'https://codeberg.org/tu_usuario/tu_script.git'
solucionalo así:

git pull --rebase origin main
git push origin main


Si en algún momento ves este mensaje:

Identidad del autor desconocido

*** Por favor cuéntame quién eres.

Ejecuta

git config --global user.email "you@example.com"
git config --global user.name "Tu Nombre"

para configurar la identidad por defecto de tu cuenta.
Omite --global para configurar tu identidad solo en este repositorio.

fatal: no es posible auto-detectar la dirección de correo (se obtuvo 'entropia@entropia-artix.(none)')
podés resolverlo ingresando las siguientes líneas en la terminal:

git config --global user.email "entropiabinaria38911@gmail.com"
git config --global user.name "Entropía binaria"

y volvé a repetir la línea que habías ejecutado sin éxito.
Esto generalmente sucede al procesar, por ejemplo:

git commit -m "Menú interactivo con barra en reversa."


Flag Counter Visitas previas a la existencia de este contador: 3433

Artículos aleatorios

    Páginas: