<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Javier Carmona Gallegos</title>
    <description>The latest articles on DEV Community by Javier Carmona Gallegos (@doncarmone).</description>
    <link>https://dev.to/doncarmone</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F786670%2F77e45c5f-7d4c-4db2-ad43-f35fbaa81c0a.jpg</url>
      <title>DEV Community: Javier Carmona Gallegos</title>
      <link>https://dev.to/doncarmone</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/doncarmone"/>
    <language>en</language>
    <item>
      <title>[MATERIAL]- Taller Manos a la obra con git y github</title>
      <dc:creator>Javier Carmona Gallegos</dc:creator>
      <pubDate>Mon, 20 Oct 2025 20:56:08 +0000</pubDate>
      <link>https://dev.to/doncarmone/material-taller-manos-a-la-obra-con-git-y-github-4hfj</link>
      <guid>https://dev.to/doncarmone/material-taller-manos-a-la-obra-con-git-y-github-4hfj</guid>
      <description>&lt;p&gt;Hi Dev.to Community this post is just a setup focused for college students for a workshop (CIISTI 2025).&lt;/p&gt;

&lt;p&gt;Lo prometido es Deuda muchachos aqui es el repo, recuerden que el repo tiene las slides de la presentacion:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/doncarmone/test-html-firststeps-II" rel="noopener noreferrer"&gt;https://github.com/doncarmone/test-html-firststeps-II&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Inicio:
&lt;/h1&gt;

&lt;p&gt;Para el taller vamos a necesitar git y una cuenta de github para sacarle el provecho al tiempo del taller.&lt;/p&gt;

&lt;p&gt;En el siguiente link vamos a poder descargar la herramienta:&lt;/p&gt;

&lt;p&gt;Selecciona a segun tu sistema operativo&lt;/p&gt;

&lt;p&gt;&lt;a href="https://git-scm.com/install/" rel="noopener noreferrer"&gt;https://git-scm.com/install/&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Setup de git
&lt;/h1&gt;

&lt;h2&gt;
  
  
  Setup en Windows 10/11
&lt;/h2&gt;

&lt;p&gt;El setup es una instalación comúm de "next" "next"&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp9eynds54qzddgm35ntt.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fp9eynds54qzddgm35ntt.png" alt=" " width="540" height="427"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Como recomendacion en esta pantalla seleccione NANO&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F14o5mkmkfkd24cw9ry37.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F14o5mkmkfkd24cw9ry37.png" alt=" " width="507" height="412"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Y continuar con el setup hasta finalizar. Si requiere un tutorial paso a paso siga el siguiente video de youtube:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=zyrhDewSa2c" rel="noopener noreferrer"&gt;https://www.youtube.com/watch?v=zyrhDewSa2c&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Setup en MacOS (Intel/Apple Silicon chips serie M )
&lt;/h2&gt;

&lt;p&gt;Por lo general git ya viene preinstalado en Macos, para comprobar si git ya esta instalado, abra una terminal presionando la tecla command + espacio para abrir spotlight, busque terminal&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv5mlv48rn5bafg34o9kr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv5mlv48rn5bafg34o9kr.png" alt=" " width="800" height="364"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Ejecute el siguiente comando:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git --version
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8atfi8v96z3iroec0mt5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8atfi8v96z3iroec0mt5.png" alt=" " width="612" height="396"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Si la respuesta de la terminal es similar a la de la imagen ya tienes instalado git.&lt;/p&gt;

&lt;p&gt;Si no tienes git siga las siguientes instrucciones:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;En la misma terminal ejecute
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;xcode-select --install
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Al terminar ejecute
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Y al completar la instlacion cierre la terminal y vuelva a abrirla para refrescar los cambios.&lt;/li&gt;
&lt;li&gt;En la terminal recien abierta ejecute:
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;brew install git
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Al terminar la instalación ejecute &lt;code&gt;git --version&lt;/code&gt; para comprobar la salida.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Setup en Linux (Ubuntu)
&lt;/h2&gt;

&lt;p&gt;Se elige Ubuntu por ser la distro más popular.&lt;/p&gt;

&lt;p&gt;Por lo general al igual que Macos, git ya vienen instalado en casi cualquier distro completa de linux. para comprobar la instalacion abra una terminal y ejecute:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git --version
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Si el comando no responde, puede instalar git usando el siguiente comando:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo apt install git
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h1&gt;
  
  
  Crear cuenta de github con el correo institucional
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;Primero vamos a entrar a &lt;a href="https://github.com/" rel="noopener noreferrer"&gt;Github&lt;/a&gt; vamos a dar click en sign in.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu8jtvbq8qh3lsuarodxg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fu8jtvbq8qh3lsuarodxg.png" alt=" " width="800" height="393"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Luego vamos escoger continuar con google.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc7c8x9far2d6me2s4zh6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc7c8x9far2d6me2s4zh6.png" alt=" " width="800" height="395"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Seleccione su cuenta institucional.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fho8jv8fma12xflpl225q.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fho8jv8fma12xflpl225q.png" alt=" " width="800" height="468"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;De en continuar.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhwjy89f44barhw69rkwe.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhwjy89f44barhw69rkwe.png" alt=" " width="800" height="521"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Termine el registro con un nombre de usuario que usted recuerde.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Al finalizar deberia ver algo parecido a esta pantalla.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fb2o4y2s79fs12otl4imw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fb2o4y2s79fs12otl4imw.png" alt=" " width="800" height="398"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Con esto terminamos la creacion de la cuenta de github.&lt;/p&gt;

&lt;h1&gt;
  
  
  Vincular mi instalacion de git con mi cuenta de github.
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;En cualquiera que sea su sistema operativo, abra una terminal y ejecute los siguientes comandos:&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Coloca tu nombre y tu correo tal cual lo hiciste en tu cuenta de github.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git config --global user.name "Tu Nombre"
git config --global user.email "tu_email@example.com"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;En mi caso seria algo como:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;git config --global user.name "Javier Carmona"
git config --global user.email "13030617@itcelaya.edu.mx"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Ahora crearemos una llave ssh, ejecute el siguiente comando:&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Recuerda colocar tu correo de github&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;ssh-keygen -t ed25519 -C "tu_email@example.com"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;En mi caso seria algo como:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;ssh-keygen -t ed25519 -C "13030617@itcelaya.edu.mx"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Te va a pedir un passphrase, de momento dejelo vacio aunque es altamente recomendable colocar algo, pero para fines didacticos vamos a dejarlo en blanco de enter hata ver algo asi&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdlm7afswnbiu1s1izxf7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdlm7afswnbiu1s1izxf7.png" alt=" " width="590" height="494"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Esto genera una llave ssh en el directorio local de su computadora, en:&lt;br&gt;
Windows es en: &lt;code&gt;/c/Users/TuUsuario/.ssh/id_ed25519&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;En macos es en: &lt;code&gt;/Users/[TuUsuario]/.ssh/id_ed25519&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;En Linux es en: &lt;code&gt;/home/[TuUsuario]/.ssh/id_ed25519&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Para finalizar ejecutaremos los siguientes comandos:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;eval "$(ssh-agent -s)"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;y&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;ssh-add ~/.ssh/id_ed25519
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Ahora regresamos al navegador y vamos a la cuenta de github, selecionamos la imagen de usuario en la parte superior derecha, despliegue el menu y seleccione Settings o Ajustes.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdwhhn58m4owmgpjj45fe.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdwhhn58m4owmgpjj45fe.png" alt=" " width="603" height="661"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Veremos la pantalla de ajustes y daremos click a donde dice:
&lt;code&gt;SSH and GPG Keys&lt;/code&gt; o &lt;code&gt;Llaves SSH y GPG&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz3luyy7ek1s8hpyltu23.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz3luyy7ek1s8hpyltu23.png" alt=" " width="800" height="385"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Seleccione New SSH Key&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F58680bj7eee0rl7ay86n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F58680bj7eee0rl7ay86n.png" alt=" " width="800" height="393"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Esto les abrirá una nueva ventana para dar de alta la llave ssh&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;En titulo coloque algo representativo de esa llave, recomiendo que sea la marca o modelo de su laptop para que recuerde que esa llave pertence a su a ese equipo.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;En el textarea donde dice key pegaremos la llave publica, regresamos a la terminal de su sistema operativo.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;En windows en colocaremos el siguiente comando (Estos comandos nos sirven para copiar al portapapeles la llave publica que generamos):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;clip &amp;lt; ~/.ssh/id_ed25519.pub
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;En macos colocaremos:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;pbcopy &amp;lt; ~/.ssh/id_ed25519.pub
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;En Linux:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;cat ~/.ssh/id_ed25519.pub
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Copie el resultado de la llave.&lt;/p&gt;

&lt;p&gt;Una vez hecho esto, pegue la llave en el textarea y guarde la llave.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fi8tj296j1f5uv0572ohz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fi8tj296j1f5uv0572ohz.png" alt=" " width="800" height="390"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Para comprobar que la vinculación fue correcta ejecute en su terminal el siguiente comando le preguntara que si quiere conectarse a github coloque &lt;code&gt;yes&lt;/code&gt; :
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;ssh -T git@github.com
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Deberia ver una salida parecida a esto:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F742vckl1je4lf7048g5l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F742vckl1je4lf7048g5l.png" alt=" " width="593" height="461"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Si fue correcta la salida ya estas listo para el taller, si tuviste problemas con la instalacion, la viculacion o algun detalle, estare el dia de la platica y el taller dando asesorias para poder llegar al taller con todo.&lt;/p&gt;

</description>
      <category>git</category>
      <category>github</category>
      <category>spanish</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Guide to Deploying .NET Web API on Linux Servers with Auto-Restart using systemd</title>
      <dc:creator>Javier Carmona Gallegos</dc:creator>
      <pubDate>Mon, 07 Jul 2025 20:51:07 +0000</pubDate>
      <link>https://dev.to/doncarmone/guide-to-deploying-net-web-api-on-linux-servers-with-auto-restart-using-systemd-281d</link>
      <guid>https://dev.to/doncarmone/guide-to-deploying-net-web-api-on-linux-servers-with-auto-restart-using-systemd-281d</guid>
      <description>&lt;p&gt;Let's level up your .NET deployment. To run your Web API on Linux like a pro, you need it to bounce back automatically from any failure. We'll show you how to harness &lt;strong&gt;systemd&lt;/strong&gt; —the gold standard for managing services—to ensure your app relaunches flawlessly after a crash or server restart.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 1: Your Setup Checklist
&lt;/h2&gt;

&lt;p&gt;Before we dive in, let's make sure you have the right gear:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;🖥️ A Linux Server: Any modern distro like Ubuntu or CentOS will do, as long as it's connected to the internet.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;🔑 Root Rights: You'll need sudo or root access to install software and configure the service.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;⚙️ .NET SDK: The star of the show. If you don't have it installed yet, grab the right version for your distro from the official site &lt;a href="https://learn.microsoft.com/en-us/dotnet/core/install/linux" rel="noopener noreferrer"&gt;.NET website.&lt;/a&gt; and verify the installation by running the next commands:&lt;br&gt;
&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;dotnet &lt;span class="nt"&gt;--list-sdks&lt;/span&gt;

dotnet &lt;span class="nt"&gt;--list-runtimes&lt;/span&gt;

dotnet &lt;span class="nt"&gt;--version&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 2: Install the .NET SDK
&lt;/h2&gt;

&lt;p&gt;If you don't have the .NET SDK yet, now's the time. For Ubuntu or other Debian-based systems, pop open your terminal and run:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# Update package index
sudo apt update

# Install the .NET SDK
sudo apt install dotnet-sdk-8.0
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 3 (Optional): Don't Have a Project? No Problem.
&lt;/h2&gt;

&lt;p&gt;Need a sample app to work with? Let's create a boilerplate .NET Web API right now. Just run the following from your terminal.&lt;/p&gt;

&lt;p&gt;Create a new Web API project:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;dotnet new webapi -n MyWebApi
cd MyWebApi
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Publish Your Application:&lt;/p&gt;

&lt;p&gt;Publish the application to a folder for deployment:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;dotnet publish -c Release -o ./publish
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 4: Create a Systemd Service File
&lt;/h2&gt;

&lt;p&gt;Create a service file in /etc/systemd/system/. Replace mywebapi with your application's name:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo nano /etc/systemd/system/mywebapi.service
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Add the following configuration to the file:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;[Unit]
Description=My .NET Web API
After=network.target

[Service]
WorkingDirectory=/path/to/your/project/publish
ExecStart=/usr/bin/dotnet /path/to/your/project/publish/MyWebApi.dll
Restart=always
RestartSec=10
SyslogIdentifier=mywebapi
User=yourusername
Environment=ASPNETCORE_ENVIRONMENT=Production

[Install]
WantedBy=multi-user.target
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;WorkingDirectory: The directory containing your published application.&lt;/li&gt;
&lt;li&gt;ExecStart: The command to start your application.&lt;/li&gt;
&lt;li&gt;User: The Linux user that should run the service (ensure this user has access to the application files).&lt;/li&gt;
&lt;li&gt;Environment: Set the environment to Production for optimized performance.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Step 5: Start and Enable the Service
&lt;/h2&gt;

&lt;p&gt;Reload systemd to recognize the new service:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo systemctl daemon-reload
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now, manage the service:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo systemctl start mywebapi.service

sudo systemctl enable mywebapi.service

sudo systemctl status mywebapi.service

sudo systemctl stop mywebapi.service
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 6: Verify Your Deployment
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Access your application via a web browser by navigating to &lt;a href="http://your_domain_or_ip/" rel="noopener noreferrer"&gt;http://your_domain_or_ip/&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Use tools like curl or Postman to test your API endpoints.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;curl http://example.com
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 7: Monitor Logs
&lt;/h2&gt;

&lt;p&gt;If you encounter issues, check the logs for your service:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;sudo journalctl -u mywebapi.service -f
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Mission Accomplished
&lt;/h2&gt;

&lt;p&gt;There you have it. Your .NET Web API is now officially deployed on Linux with a systemd safety net. You've built a robust service that won't go down without a fight, automatically restarting whenever there's a hiccup.&lt;/p&gt;

&lt;p&gt;The next level? Slip it behind a reverse proxy for a production-ready setup. Any questions? You know where to find us.&lt;/p&gt;

</description>
      <category>csharp</category>
      <category>linux</category>
      <category>dotnet</category>
    </item>
  </channel>
</rss>
