¿Marcar el repository de Git como local solamente para que no pueda ser presionado?

Tengo un proyecto en particular que no quiero enviar a GitHub. Es decir, solo quiero usar localmente con Git y asegurarme de que nunca se envíe a un repository remoto. ¿Hay alguna forma de marcar un directory / proyecto para que esté bloqueado y el command push fallará si se intenta? De esa manera no tengo que preocuparme por empujarlo accidentalmente. He estado usando Git durante tanto time, y add / commit / push está enraizado en mis dedos y no quiero tener un crash durante una session de progtwigción nocturna.

Puede agregar un gancho de pre-push para evitar que se pre-push el repository. Cambie el nombre del .git/hooks/pre-push.sample a .git/hooks/pre-push (o cree ese file si no existe). El contenido del file debería ser algo como esto:

 #!/bin/sh echo 'Repository cannot be pushed' 2>&1 exit 1 

El echo es opcional, pero el script debe salir de no-0.

Dos opciones (que yo sepa):

1) Elimine la reference del repository local al repository remoto.

 git remote remove origin 

Normalmente, solo hay una reference remota que se denomina 'origen'. Puede verificar references adicionales:

 git remote show 

2) Mantenga las references, pero apúntelas a diferentes repositorys:

 git remote set-url origin ${somethingElse} 

Puede agregar un control remoto local de la siguiente manera:

1) Cree un repository vacío en algún lugar de su máquina usando lo siguiente:

 git init --bare path/to/localrem.git 

Esto creará un repository desnudo sin un directory de trabajo, esto es lo que generalmente se usa en los controles remotos reales. (creará una carpeta llamada localrem.git que es el repository .git usual, pero esto es para controles remotos, así que obviamente puedes cambiar el localrem de localrem por el nombre que quieras)

2) Luego, en el repository original, agrega el nuevo control remoto, ya que agregaría cualquier control remoto común, excepto que la ruta no es una url:

 git remote add origin path/to/localrem.git 

3) Ahora puede presionar como mejor le parezca sin tener que preocuparse de que el mundo vea su trabajo.

 git push origin master 

Por supuesto, eso depende de qué twig le gustaría mantener en su control remoto local.