¿Debo alojar el sitio web de la cartera en el repositorio público de GitHub? [cerrado]

0

Tengo un sitio de portafolio pequeño en el que trabajo en mi tiempo libre como una forma de demostrar y aplicar lo que he aprendido de la escuela / el trabajo. Parte de esta demostración me involucra actualmente listando el repositorio como "público" en GitHub para que cualquiera pueda verlo y navegar. El razonamiento detrás de esto es que esto significa que las personas pueden ver cómo enfoco la gestión de proyectos y cómo estructuro mi código.

Sin embargo, esto introduce algunos riesgos de seguridad y otros problemas. Obviamente, ahora no puedo incluir ninguna información privada, como contraseñas de ningún tipo (o puertos privados, variables de correo, etc.); más bien, esto necesita ser movido a otro lado. Por un tiempo esto estuvo bien, hasta que decidí que quería incluir un blog, lo que requería usuarios, lo que requiere la funcionalidad de inicio de sesión (una lata de gusanos completamente nueva).

Debido a esto, ahora me pregunto dónde puedo almacenar toda la información confidencial adicional que he creado. ¿Estaría mejor si hubiera marcado el repositorio como "privado" y simplemente alojara algunos ejemplos en mi sitio web? Para mí esto es un poco menos ideal, ya que parece menos auténtico (es decir, podría haber dedicado más tiempo a refactorizar esos archivos, más allá de lo que normalmente haría en mi trabajo).

Sin embargo, ¿es esto algo que sería una mejor idea a largo plazo, además de simplificar el desarrollo al consolidar mis archivos?

ACTUALIZACIÓN : el sitio casi no usa marcos (aparte de Foundation 6 para el etiquetado frontal), ya que este es el propósito principal del sitio (para enseñarme los conceptos desde cero). / p>

Pregunta principal : ¿Hay algún beneficio al hospedar el sitio en un repositorio público que no se puede obtener solo exponiendo archivos específicos en otro lugar? es decir, en una sección de Proyectos del sitio?

    
pregunta Kendall Roth 05.01.2017 - 00:12
fuente

2 respuestas

1

Por lo general, movemos información confidencial a archivos de configuración con un patrón de nombre, como cada uno de ellos que termina en la extensión .conf , por lo que simplemente puede crear una entrada .gitignore para que coincida con todos ellos en su proyecto. Los archivos que coinciden con .gitignore simplemente no se envían al repositorio público, pero puede continuar trabajando con ellos localmente. Si desea ser amable y permitir que otros prueben su aplicación, proporcione ejemplos de archivos de configuración o documentación que contenga el formato correcto de datos.

    
respondido por el Rápli András 05.01.2017 - 00:25
fuente
0

En general, se considera un antipatrón para incluir secretos en el control de versiones; al menos, se acuerda que si los almacena, lo hace en un formato cifrado.

Hay muchas opciones de software para facilitar esto, pero la lista cambiará y quedará desactualizada fácilmente, por lo que es mejor si hace su propia búsqueda de herramientas específicas. Le recomendaría que primero vea la charla Turtles All The Way Down para obtener una visión general más amplia de lo que puede caber aquí en los enfoques para resolver este problema y los inconvenientes que tiene cada enfoque (es decir, que siempre debe proporcionar otro valor secreto).

  

Por un tiempo, esto estuvo bien, hasta que decidí que quería incluir un blog, que requería usuarios, lo que requiere la funcionalidad de inicio de sesión (una lata de gusanos completamente nueva).

Esto no es realmente cierto. Los generadores de sitios estáticos como Jekyll utilizan git como mecanismo de autorización (si puede confirmar, puede agregar publicaciones). Además, la autorización de los usuarios externos para realizar comentarios a menudo se maneja a través de sistemas de comentarios cargados con JavaScript como Disqus.

    
respondido por el Xiong Chiamiov 05.01.2017 - 02:47
fuente

Lea otras preguntas en las etiquetas